-
So, Ruby, you’re kinda plain…
Posted on July 31st, 2008 No commentsI work almost all day, every day in knee deep Ruby nowadays. It’s actually fantastic, because it’s made so many aspects of my job trivial. Rearranging, shuffling, sorting through collections is a snap. Coding is kinda fun, just because I can knock out stuff so quickly.
It’s similar to my Mac as far as coolness and usability goes. When I converted over to using Apple stuff full time, I lost a lot of interest in hardware and how drivers and crap worked. My computer just works now. I don’t know why your printer doesn’t work, but I can tell you that if you had a Mac it probably would.
One of the downsides to this, though, is that I feel like I’m nearing the end game. In WoW (yeah, I played it, it was horrible, but anyways), after you hit the last level in the game, everything changes. You’re not driving towards obvious goals, but instead towards fringe things that interest different people. You want to buy the fancy mount or grind for some cool headpiece. It’s just not the same.
The same thing’s happening to me with Ruby. Problems that would have been really hard for me a year ago in Ruby are now pretty easy. I’ve learned a ton about metaprogramming, and love it to such an extent that I’m sure I abuse it. Oh well, it gets things done quickly and easily.
There are fringe things that I can start to learn about. How Ruby is interpreted, ways to optimize around that, etc., but as for the core language and the majority of problems that I’ll face, it’s just an issue of time it seems like, no longer an issue of knowledge. This isn’t a bragging post; I’m confident anyone who’s been doing Ruby for 2 years full time would be at about the same spot.
So while this is anything but a bitching about my job post, I’m trying to think of something else to get interested in. I could start looking into more hardcore Rails stuff and seeing if I could contribute to that, or maybe get into something else entirely on the side. I really like reading about evolution and skepticism and atheist goodness, but I don’t create much in that arena. I suppose I could.
I could also just kind of chillax a little bit and wait until baby #2 gets here, because then all of my side hobbies will get put on hold.
Or I could just get awesome at StarCraft 2.
Uncategorized -
iPhone 3G: disappointment.
Posted on July 31st, 2008 5 commentsLast year, when the original iPhone was released, I bought a 4gig model on the first day. I actually didn’t even purchase it; my step mother waited in line at a store when it was released (at 6 in the evening) and she picked one up and met us at Serrano’s.
I went home that night and activated it. I was amazed. Everything seemed so well thought out. Everything activated easy peasy. I had my contacts all set up within an hour, tried out movies, music, web browsing, YouTube. Things worked so seamlessly. I have lots of fond memories of my first iPhone, also known as the first phone I didn’t hate after 3 months.
When Nate (who was the worst newborn imaginable) wouldn’t go to sleep, I could put in the earbuds and watch Colbert Report while rocking him. When I traveled around, I could listen to music. At lunch I could check my email. I hadn’t had a smart phone before, so this was all new and captivating for me.
It was a no-brainer when the 3G was announced that I’d be getting one as soon as I could. I got in line the morning of the release, only to be 5 people too far back. Oh well, I thought. I’ll get one over the weekend at the Apple Store.
So, Saturday morning, I figured I’d stroll in about half an hour before the store opened just to be safe, and would be one of the only people to get it. I told Sara that the wait couldn’t be that long, so she and Nate tagged along. Strike 1.
I arrived 30 minutes before the store was set to open, and was probably the 200th person in line. About 30 minutes after standing there, they moved us to the other side of the street (we waited outside the store) to keep us out of the sun.
We ended up waiting 4 hours to get my damn phone. Each time I’d get discouraged and be tempted to leave, I’d think, “it can’t be more than another hour.” I thought that a lot, and was wrong most of the time. Further compounding the problem, the Apple employee wouldn’t offer how much of a wait we had. He kept avoiding the question by saying that he was so wrong yesterday that he didn’t want to estimate.
So, after all of this, I activated my iPhone at the store. They wouldn’t let you leave without activating the phone, which is what took so long. Unfortunately, having it activated doesn’t mean you can use it – it just means that the phone is ready to be set up on iTunes. Also, another cool side effect of having your phone activated is that your previous phone gets disabled. So I had no phone for the remaining errands (not a huge deal, just another poorly thought out pain in the ass).
After getting the phone activated, I was ready to try things out. Wait, sorry, no I wasn’t. I was used to syncing my iPhone to my computer, but the way contacts are handled is confusing, so I told it not to sync those. Unfortunately, that means when your phone is backed up, contacts aren’t backed up. So I lost most of my phone numbers. Yay.
Ok, so after sending out a fun email explaining that I’m apparently too dumb to use the easiest phone on the planet, I got to playing with the features. I installed the Apple TV remote (which is great, when it’s hooked up) and a few stupid apps like the light saber.
Then it was time to try out the GPS. Which failed. Later I figured out that the GPS only seems to pinpoint your location if you’re on AT&T’s network, and not if you’re on wireless. Which is a little stupid, seeing how I might have wireless and still want to know where I am.
Another problem with the GPS is that it’s written to overlay with Google maps. This means that you have to, again, be connected to the Internets to get any sort of meaningful data. When you’re heading out to the lake to meet family at a restaurant, and you’re not quite sure how to get there, but you figure you’ve got an iPhone GPS so it’ll be easy, you realize that the 3G coverage on AT&T’s network is terrible. We never figured out where we were, and a cousin called and gave us directions.
The email transitioned over pretty easily, so I tried to respond to an email. The keyboard for my email application is practically unusable. The delay between touching a key on the screen and the phone registering the action is (not an exaggeration) 3-5 seconds. It’s fun typing without any sense of what keys you hit correctly and what you didn’t. It’s to the point where if the email is longer than one sentence, I’ll wait until I get to a computer to send the email.
The browser and contacts are slow as balls. Definitely slower than the previous phone. The browser has to think for several seconds before coming up, and on contacts I’ll sometimes have to wait 5-10 seconds after pressing “John Smith” to actually see a number I can dial. Further, there are times when it takes 20-30 seconds for the SMS app to open up.
While I welcomed the new price on the phone (hey, $200 is a lot easier to pull off than $500), it feels like Apple dismissed a lot of QA to keep the cost competitive. Things that should have been thought out (registration servers crashing, slow phones, 3G use) weren’t, and I went from paying for and driving a porsche to paying for and driving a civic.
I put up with terrible phones for a long time, because I didn’t know there could be anything better. The original iPhone changed that. Now, Sara makes fun of me because I bitch about the phone all the time.
I sold my old iPhone to a coworker for $50. While the phone was worth the money for both parties, I feel like I lost something. A phone that I didn’t hate. A phone that I never, ever wanted to slam against the wall. A phone that introduced new, great solutions to old problems. Now I’m back to just another old shit phone that works half the time and sells twice the features that I don’t care about.
Hopefully a software update fixes this, but until then, I’d say if you don’t need a new phone, the iPhone isn’t a step up.
Uncategorized -
I read books: Audacity of Hope
Posted on July 29th, 2008 No commentsI just finished (like, today; 5 hours ago) Obama’s latest book: The Audacity of Hope.
I don’t really want to do a line by line review of the book, so I’ll just give a few thoughts on it.
- I liked it.
- Obama talks about issues that affect everybody, but, at least for me, those issues entail and affect more things than I know about. Generally, the way I hear about issues is from CNN or Fox News. When it comes from those, it’s generally made to get ratings and generate anger, since that drives more ratings. Suddenly, issues become 4 or 5 competing bullet points, and the actual compromises and factors going into the decision get lost in one of Bill O’Reilly’s retarded rants. Obama calms things down a bit in his book and explains his viewpoint, without having to worry about being cut off or screamed at.
- The book covered a wide range of topics, from constitutional law to family. Even though Obama’s got an entirely different life from me, it was interesting to see parallels. From fights we’ve both had with our wives to our thoughts on free speech. What I really liked about the book, though, was that in covering different topics so thoroughly, it gave me lots of time to craft my own opinions on issues that he didn’t discuss.
- With the upcoming election, and the inevitable dinner table political discussions, I’m glad to have read it. At least I’ll know where one candidate stands on issues, and his reasoning behind it. I won’t know McCain’s underlying reasoning, but oh well, I’ll still be 50% cooler than the guy I’m talking with.
Next up: Into the Wild.
Uncategorized -
Babies babies babies
Posted on July 28th, 2008 No commentsHere’s a buddy, @vanweezy’s, take on babies: http://vanweezy.blogspot.com/2008/06/babies-babies-babies.html
That describes Sara’s and my exact sentiment about children when we first got married (we haven’t been married much longer than them, so it was for a much shorter phase).
Then we’d alternate getting baby fever, and finally one day we got it at the same time. Sara went off birth control, and about 14 months later this guy was born.
I’m glad we waited a year to even start trying. Everything about babies is stressful. It turns your life upside down. Parents live shorter lives than those who opt not to have kids. They cost money. You really start to understand what sleep deprivation means, and how it affects you. Your job becomes exponentially more important. Stability becomes a goal – no longer a bore. Their diapers stink. They spit up. They scream.
Oh, and they’re cute.
That’s what people without kids see.
It’s only by being stupid enough to actually procreate that you understand where all of that balance comes from. I’m sure the folks without kids will loathe that I’m leaving out the next paragraph, where I’d describe all the joys and counterweights to those chores listed above. But I won’t. @parents: wink.
Uncategorized -
PZ writes something profound
Posted on July 25th, 2008 1 commentNothing must be held sacred. Question everything. God is not great, Jesus is not your lord, you are not disciples of any charismatic prophet. You are all human beings who must make your way through your life by thinking and learning, and you have the job of advancing humanities’ knowledge by winnowing out the errors of past generations and finding deeper understanding of reality. You will not find wisdom in rituals and sacraments and dogma, which build only self-satisfied ignorance, but you can find truth by looking at your world with fresh eyes and a questioning mind.
That’s from the end of the whole wafergate bonanza. See the original post here.
Uncategorized -
Outrageous and unAmerican
Posted on July 19th, 2008 1 commentI’m not going to spam people with my ACLU emails, so I figured I’d post it here instead.
Subject: Outrageous and un-American
Hey,
Did you know that Congress has signed away our right to privacy?
It’s true! By making FISA law, the President and Congress have made it legal for US agencies to spy on our text messages, email, and phone calls to people outside the US, without any cause, reason or warrant. Does that sound like a right to privacy to you?
Help the ACLU overturn FISA by sharing your message of support now!
http://www.aclu.org/fisaaction
***********
Thanks for taking a stand!
The ACLU Online Team
Uncategorized -
Women should get 50%, not 49%
Posted on July 17th, 2008 1 commentAfter reasoning through this with Sara, I came to the realization that I should have kept my mouth shut. But I didn’t, and now Sara understands that I think we’re equals, and I don’t think I should have a slight authority in the decisions we make. Oh well, utopian society ftw?
Sara attends a small group (I’ve written about it before), and they’re doing a series on having good marriages. Well, she came back and said a couple of the things that the guy said, and then said that men should get 51% of the decision power. She said that he said that, since men are expected to die for women and are expected to be the providers, that lends them more authority than women.
He also said that, after we both die, the man is judged by his decisions, and the woman is judged by how she supported those decisions. There’s verses in the Bible that support this claim. Which is strange, because new age Christianity seems to be all about just accepting that Jesus was a god, and not about works (except Catholicism, I think).
I found this wrong (but if I’d kept my mouth shut, I’d get the extra 1%!) for a few reasons. First, he’s taking societal values and expectations, as well as economic value, and applying it to a family. That doesn’t work. While I do make infinitely more money than Sara (she stays home with Nate), and am considered more valuable in the workplace (because not many people care how Nate’s raised), that doesn’t mean her work is any less valuable for our family. It’s arguably more important than anything I do.
I just bring home money to make sure we’ve got a house and can pay for clothes and food, and Sara’s the one that puts it to work. As such, I’d say we’re both vital to the function of our family, and neither actor deserves an upper hand.
The Bible has all sorts of stories and revelations about how women are terrible creatures. Hell, Eve ruined the whole thing. Most other religions follow suit. Muslim women are apparently too tempting to show their faces, and women in India are often too dumb to choose their spouse.
I think that’s where he’s also wrong. If you reject what religions are saying about women, and treat their ideas as equally justifiable and arguable, you end up with better ideas. I don’t think it should ever come down to “well, I’m the provider, and I’m saying this, so this is what we’re doing.” It’s more we discuss ideas, tear down the bad ones, find compromises that work, and act on that.
Ideas are intrinsically good or bad, and it’s through stringent evaluation that we pick the helpful ones from the horrible ones. Ideas aren’t good because they come from a person or a book. They must be evaluated on their own merit.
It’s our responsibility as parents and as a couple to make decisions in everyone’s best interest, and that doesn’t happen in a dictatorship.
But, yeah, I should have kept my mouth shut.
Uncategorized -
Dear Sellers
Posted on July 16th, 2008 4 commentsSo, for those who don’t follow too closely, we just moved into our new house. It’s closer to my work, is bigger, has nicer amenities, and is a better neighborhood. I think it’s only kind of me to write a letter to the sellers, explaining how happy I am with the purchase. So, without further adieu:
Dear Hillary B.,
We love the house. Thank you so much for selling it to us. There are so many amazingly smart things you did before leaving that it’s only right of me to note and thank you for them individually:
- Thank you for patching the walls! Personally, I’m also against texturized surfaces, and your four-inch-diameter patch jobs paved the way for 100% smooth walls, as far as I was concerned. I was ecstatic, not having to worry about depth in our hallways and living rooms. Unfortunately, everybody else who saw the house thought they were atrocious patching jobs, especially since sometimes the nail often poked through the plaster (I said it was new age!). So, we ended up hiring a drywall specialist to fix it. Anyways, I admire your work, even with the defeat.
- Thanks for saving the environment! I know how much water grass requires, and I’m so happy that you decided to stop watering after we bought the house. Who cares about grass, anyways? I really liked the yellow hue that reflected on to our house, and in the absence of grass, we had some spectacular weeds show up in the back. It was like a jungle for our kids and cats! Unfortunately, again, I lost the battle in trying to save the environment, and we’ve started watering. I’m sure you’ll be sad to know that in 3 weeks, green has started to come back.
- Thanks for getting rid of those curtains! Nobody likes 9′ curtains, especially since they’re easy to find and surely you had a place for them at your new house. So, in short, thanks for ridding our house of those.
- Thanks for the TV mount! We’re really glad you let us negotiate that from you. Well, by “we,” I mean “Sara.” I know that you didn’t put it in your disclosure that it didn’t convey, and that you only knocked, oh, fucking 4″ holes in my studs, but I didn’t think we really wanted it. I was wrong! It looks great.
- OMG your paint job is amazing! I love how you added texture to our walls by using *3* different shades! Not only does it add depth to each room, it also makes painting a great guessing game! It’s right up there with “who’s in my mouth?” Thanks for the endless pleasure!
- Thanks for sending us email all the time during the sale, but refusing to answer our emails! You know, I really hate direct lines of communication. They cause all sorts of problems. If the Katrina or Iraq situation had been handled by indirect lines of communication, I’m sure the world would be in a much better place right now. I love the touches your relocation company put, including your passive aggressive notes in the correspondence below where they replied to our questions. It was really clever, and taught me a lot about human interaction.
- Thanks for not canceling cable! Time Warner is pretty stupid (and also offers a circa 2000 DVR, but that’s beside the point), and didn’t want to schedule connection service, or even sign us up for it, until you canceled. I’m so glad you didn’t cancel earlier, or at all, because otherwise we would have paid for 5 extra days of cable! OMG that’s like a meal at Chick Fil A!!! It was nice of you to require our closing documents be faxed to Time Warner to get anything done.
- Thanks for not forwarding your mail! I LOVE golf magazine! It’s like reading about first hand accounts of waterboarding, so I’m so glad you kept delivering it here! Further, your fat chick clothing magazine will be WONDEROUS when I gain another 100 pounds and go drag queen.
So, overall, I’d like to thank you for acting just like a seller should. You’re a credit to the human species, and I thank you for making the process so painless. I thought my tooth extraction was easy, but wow, you showed me what it really feels like to bend over and take it lubed.
Thanks!
Terry
Uncategorized -
Oh noes, politics. Or, why abstinence education is stupid.
Posted on July 16th, 2008 2 commentsI’m not sure if it’s because it’s an election year, or what, but I’ve felt more opinionated about issues lately. Or I’ve just heard more about them and realized the absurdity in the whole debate.
Anyways, a few mornings ago I heard the topic of sex education come up on the radio (Colin Cowherd was on commercial break, so I flipped to that douche idiot station 1300AM). A woman calls in, telling the hosts that she teaches 8th grade, and that abstinence education is important. She explains how she relays the problems of STDs, pregnancy, emotional distress, etc., to the kids, and that the only way to be 100% sure that you’re safe from those is to not have sex.
Well, that’s pretty much bullshit. Take a kid, respected in society as already having poor judgment (there’s a reason they’re not allowed to vote), add raging hormones, and girls developing right in front of them. Oh, what? Abstinence doesn’t work? Yeah, no shit.
When one of the hosts suggested teaching abstinence as the only sure proof protection, in addition to other methods and their ups and downs, the other host chimed in, “well that’s giving the kids options.” That’s another load of bullshit. Everybody has those options – birth control, condoms, (outercourse – sounds like my Friday night – you were at temple) – and you only take them away by not explaining them, because most parents half ass the sex talk and don’t talk about those.
Think of it statistically. If I relay the choices as “you can have sex, have the time of your life, and you have a 16% chance of getting pregnant, 10% chance of getting a disease if it’s not their first partner” or “you can do nothing,” which is more appealing?
Now, introduce birth control, condoms, and explain how it’s a big deal but is not a ticket straight to hell? Pregnancy, worst case, goes to 3%, and that’s assuming nobody explains how to use a condom. Best case, pregnancy goes to like .001%. Not a big deal. Disease? Stress why (1) condoms are important, and (2) don’t sleep with every person you shake hands with. Well, not until you want a promotion, anyways.
Suddenly kids can still be kids, nobody’s condemning them, and lots of ill equipped parents don’t become grandparents in their 40s.
It’s time we start taking a practical approach to society, and drop the theoretical garbage. Theory gets us to abandon school lunches for kindergartners because they’ll lose their sense of self dependence; practice gets us the Internets.
Uncategorized -
Rails periodically_call_remote and drafts
Posted on July 15th, 2008 No commentsI’ve been working on an automagic, ajax-y draft saver for posts that people write. To make things slightly more complicated, though, these posts get published for other people (so we can’t show them as drafts to the rest of the site), and we’re using TinyMCE.
If you’ve used TinyMCE, then you know how it keeps its own iFrame up where peope edit text, and it hides the corresponding textarea, and changes the textarea on form submit so it gets posted to the server, so no matter what kind of automated submission you do, you’ll have to add an event handler for TinyMCE’s onChange event to tell it to triggerSave().
Because onChange only works when TinyMCE loses focus, and doing something like onKeyDown has a huge performance impact (my Firefox spiked to 95% CPU), I avoided Rails’s form observer and went with a periodic updater. It worked great, was saving a draft every 10 seconds, but then after checking it in (of course) we started to come across some strange behavior on a coworker’s computer.
The logs showed things like this happening:
- Loads the new page (for the user to start writing the post)
- Saves draft (ajaxy magic)
- Posts to create (they’re done with the draft)
- Saves draft (wtf!?)
Further, after a few more tries, we got an even better one:
- Loads the new page
- Saves draft
- Posts to create
- Redirects to show
- Saves draft (!!!)
Turns out, the ajax requests were getting sent, but the old school http requests were landing first. Essentially, after pressing submit, the periodic updater would run again, re-drafting the post, and unpublishing it. No bueno.
Luckily, periodically_call_remote has a nice :condition parameter, where you can specify javascript conditions for the updater to send a request. So now it became something like:
<script type="text/javascript"> save_draft = true; </script> ... <input type="submit" onclick="save_draft=false; return true;"/> ... <%= periodically_call_remote(:update => "spit", :condition => "save_draft == true", :url => {:action => "save_draft"}, :with => "$('theform').serialize()", :success => "update(eval('(' + request.responseText + ')'));") %>So, that fixed it. There were some other handy things that I used to get it done, like Prototype’s beast-o form serializer, and ghetto eval of JSON (because we’re using an older Prototype), but I thought that might be useful to other people who run into the same problem.
Uncategorized


