JedFonner.com

My personal ramblings, photos, etc
  • rss
  • Home
  • About
    • Dreamhost Promotion
    • Free Online Backup
  • Photos
    • Nicole’s belly
    • July 4th Fireworks on the Mall
    • European Vacation
      • London
      • Venice
      • Cinque Terra
      • Rome
      • Athens
      • Naxos, Greece
      • Santorini, Greece
    • Kite Festival and Cherry Blossoms
    • Lunar Eclipse
    • Our day in Monterey/Carmel
    • Trip to Wine Country
    • Mo & the gang in Phoenix
    • Honeymoon
    • Phil’s and Micki’s Wedding
    • Samir’s Wedding
    • Skiing in Utah
    • Halloween 2006
    • Hawaii
    • Climbing Mt Rainier
    • New Orleans
    • Niagara Falls
    • Random photos from Flickr
  • Videos
    • First attempt with Animoto
    • Danya Holiday Party 2007
    • Flip frisbee videos
  • Wedding
    • Our wedding made the paper!
    • Wedding Slideshow
    • Wedding CD song list
    • Wedding Montage
    • Singing, Dancing Fools
    • Mo’s Best Man Speech
  • Stuff
  • Web Feed

Best name for a programming blog, ever

Jed | February 29, 2008

Talking with my friend Brian, I was reminded of a story from my first year in computer science class at the University of Pennsylvania. From that story, we realized we’d known of the best name for a programming blog ever, we just hadn’t realized it.

Back in our CS 100 days, we had many late nights spent in the lab. And usually, when we were in the lab, we spent a lot of time banging our heads against the wall trying to figure out tricky problems. Of course by “tricky” I mean relatively obvious things that should have been taught to us if our professor actually ever taught us anything. And this was before professors were irrelevant because you could just go online and Google your question and find the answer.

But there was one bastion of hope and help - the TAs. We could IM the TAs while in the lab and ask them questions. One night, while struggling with a problem which I have long since forgotten, Brian and I threw ourselves at the mercy of the TA on duty. We posed our question to him, and this was his first response:

“Well first let me ask you, how much OOP do you grok?”

I swear Brian and I stared at that one line for what seemed like an eternity. Eventually we humbled ourselves and asked him what the hell he was talking about. He calmly explained that OOP is “object oriented programming” and “grok” means to understand deeply (don’t believe me? Look it up).

From there the conversation got easier. But now I can’t help thinking that one line would be the best name for a programming blog ever.

So once I have enough time on my hands, I fully intend to start the How much OOP do you grok? website. It will be very web2.0ish, or maybe web3.0ish depending on how long it takes me to set it up. And in case you were thinking of snagging it away from me, you’re too late, I’ve already registered www.howmuchoopdoyougrok.com.

Comments
No Comments »
Categories
Funny, Programming
Comments rss Comments rss

Subversion on Mac OS X

Jed | February 16, 2008

I’m finally getting around to making some upgrades to this site. But I didn’t want to do it in a haphazard fashion. I wanted to use some of the common development practices I use every day at work. The first and most important, of course, it to put everything into version control. I chose Subversion because it’s what I’m most familiar with.

Setting up Subversion on Dreamhost is a piece of cake. Importing the current code for this site was also very straightforward.

Subversion logoThe only big problem I had was finding a good Subversion client for my iMac. At work I use TortoiseSVN by the good people at Tigris. TortoiseSVN has its pros and cons but it’s not an option for me here because it’s Windows only.

Tigris has a SVN client for Mac which called SCPlugin which looks like a clone of TortoiseSVN. It is supposed to plug into the Finder and provide much of the same functionality as TortoiseSVN. If you Google it, you’ll find as many people praising it as lambasting it. I gave it a shot but I found SCPlugin to be very flaky (it was constantly having problems with my repositories) and I wasn’t thrilled about having it integrated into my Finder.

So I went looking for other SVN clients for the Mac. Here’s what I found:

  • MacSVN: interesting, but it hasn’t been updated in over a year
  • Syncro SVN Client: looks great, has some powerful features, but it costs $60 and I’m used to free developer tools
  • svnX: has potential, but hasn’t been updated for Leopard and requires you to install the subversion libraries

In the end, I was only able to find two usable clients.

The first was RapidSVN. Installing is a super simple process and I was up and running in under a minute. It allows you to do all the normal SVN actions. It does show the spinning beachball a little more than I like, but overall it’s a very capable client.

As nice as RapidSVN is, I’ve decided to go with a tool that I also use at work when I’m in the Windows world: Subclipse. It’s a plugin for Eclipse and isn’t OS specific. It works at home just like it does at work. Since I needed an IDE for editing code anyway, this was a perfect fit.

If you are familiar with Eclipse and are planning to use it as your IDE, I highly recommend Subclipse. Otherwise, go with RapidSVN unless you need the powerful features of Syncro SVN.

Comments
No Comments »
Categories
Mac, Programming, Technology
Tags
client, development, Mac, macsvn, osx, Programming, rapidsvn, scplugin, subclipse, subversion, svn, syncrosvn, synx, tech
Comments rss Comments rss

Small vs big companies

Jed | September 6, 2007

I saw this on the Joel on Software blog and thought it was as amusing as it was accurate:

“Basically a small company has a flavor to it, whereas a big company is sort of like checking into the Bellagio in Las Vegas. It’s a nice hotel but it has 5,000 rooms, so don’t expect anybody to remember your name. A small company is more like a bed and breakfast. You’re going to have a great time because you get along with people and it’s a much friendlier experience. You don’t really mind that the bathroom is down the hall because the people made a special vegetarian meal for you and then showed you around town. On the other hand, you might be at a bed and breakfast where they have weird leather implements and lots of cats.”

– From A Conversation with Joel Spolsky in ACM Queue.

Joel on Software

If you do anything in your job related to software, I encourage you to read the Joel on Software blog. It’s funny, but more than that it’s really helpful.

If you’re actually directly involved in building software, you have to read Joel’s book, which covers everything from project management to bug tracking to keeping your people happy. Grab a copy of your own, or you can borrow mine.

Comments
Comments Off
Categories
My Picks, Programming, Work

An engineering manager’s experience with Devshop

Jed | July 11, 2007

At Appian, we’re always looking for better ways to build software. Whether we’re giving everyone dual-21″ wide-screen monitors, buying MyEclipse licenses, or just figuring out the best ways to track bugs and learn from our mistakes, we like to pride ourselves on our constant innovation.

So for my team, I wanted to improve the way we plan new releases. I was fed up with the non-collaborative nature of MS Project (Note: I say MS Project is non-collaborative b/c we didn’t want to get software licenses for every developer, we don’t have the “collaboration-server” or Sharepoint, and we didn’t want to shell out lots of $$ for Project 2007).

I wanted something that could easily be viewed and edited by my whole team. I also wanted something geared towards the specific needs of software development. Being the geek that I am, I had previously read about Devshop.com, and decided that we’d give them a whirl.

For those of you who don’t know:

DevShop Logo

Devshop is a hosted project management application specifically designed for planning software projects. Not planning weddings, or building roads - just software.
- www.devshop.com

There’s a lot to like about Devshop, and a lot to complain about as well. Before I embarked on this little experiment, I Googled around and wasn’t able to find any real, meaty reviews of the service. Even now, a Google and Technorati search come up empty for substantive reviews. So that’s where this post comes in.

What’s to Like

  • Collaboration - everyone can log in, view and update the plan, and see what’s next on their plate
  • Access it anywhere - no software is needed to install since it’s web-based. People can work and update the plan from home, the road, etc
  • For the most part it does everything MS Project does - for all but the power Project users, Devshop’s features match MS Project
  • Good support, and hopefully improvements to come soon- I wrote to Devshop with a question regarding setting working time (for example, if developers only work on project work from Tues-Fri). Within 2 HOURS I had a hand-written response from Craig Fitzpatrick (Chief Executive Officer) letting me know that it wasn’t currently possible but it was on their to-do list for future versions. Regardless of when they roll it out, getting a response that quickly makes me feel all warm and fuzzy.
  • Intelligence & Metrics - I have to say I haven’t had enough time to fully explore these “advanced” features, but they look like, over-time, they’ll provide interesting information on how our project progressed and what we can improve upon next time

What’s NOT to Like

  • Not AJAXy enough - When you update a field (like assignment or date) on the schedule, it refreshes the whole page! This is super annoying because you have to wait 5-10 seconds for the schedule to reload and re-render. Also, you get sent to the top of the page (even if the field you updated was at the bottom of a very long plan) but then a few seconds later, it teleports you to the bottom. It’s all very disconcerting, and harks back to the old days before Ajax. I realize that there are lots of computations going on behind the scenes to properly adjust all the tasks, but come on, leave the order of fields alone, and just refresh the start/finish and Gantt sections.
  • It has different paradigm for laying out tasks - in MS Project, you basically lay out your tasks and use assignment, dependencies dependencies, and absolute task priority and to figure out how everything will flow, all from one interface. In Devshop, the flow of tasks depends on assignment, dependencies, and relative task priority to determine flow and order of tasks. This may seem like a small matter, but it takes some getting used to. Relative task priority is set on a different tab than the main schedule. So sometimes, you add a new task and Devshop sets it to start a long time from when you wanted it to start. You have to remember to go to Schedule by Person and re-order the task to be higher priority than other tasks. If you’ve never used MS Project, this is actually a more intuitive approach. But the main problems with this approach are that it doesn’t let you define tasks that override all others (like time-off, holidays, or vacation) and it doesn’t allow for the concept of splitting tasks (see next point).
  • It can’t split tasks for things like non-working time, holidays, vacations, etc - since all tasks’ priorities are relative to each other, you can’t have project tasks split around super-important events that MUST happen on a certain day. For example, say a certain task will take 4 days, but in the 3rd day, you have a quarterly meeting. In Devshop, you must either manually create 2 tasks for the project work and 1 for the quarterly meeting, or otherwise it will try to put the quarterly meeting after the 4 days of project work (even tho the quarterly meeting MUST happen on a certain day), or it will put the project work completely after the quarterly meeting, meaning that the 2 days before the meeting are empty.
  • Only time constraint is “Start no earlier than”. What about “Start no Later than”!? - again, this goes to the idea of splitting task and absolute dates.
  • No way to resize columns - I don’t need tons of space for my task names, but I’d like more room for the Gantt chart
  • Doesn’t leverage metadata enough - it offers the ability to add Notes, Requirements, Designs, Approval, etc to tasks, but these aren’t easily accessible (too many clicks!) and there’s no workflow around requirements, designs, etc to make them really useful.

Minor quibbles

  • You can only assign a task to one person
  • You can’t select a bunch of tasks and group them all into one task-group - instead, you have to create a new group above them and then indent the tasks you want to add to that task group. Not awful, but annoying, especially given the whole-page-refresh issue
  • Assumes requirements and designs are documents, not web-pages - we do requirements and designs on our internal development wiki, but Devshop does not allow you to attach links to Requirements and Designs sections of tasks, only actual documents.

Overall, I think we’ll stay with it since I’m willing to put in the extra time to work around it’s limitations in order to provide my team and my manager with a collaborative, project management tool that gives everyone visibility into everything that’s going on.

Comments
No Comments »
Categories
Programming, Technology
Comments rss Comments rss
Trackback Trackback

Bookmarklets are cool: Create Google Calendar Event

Jed | June 20, 2007

So I really like bookmarklets, because they’re easy to use, don’t require any installation or restarting, and are easy to customize. That last point is key, and I’ll explain why.

I wanted a way to quickly grab some text on a page and add it to my Google Calendar in the details of a new event. For example, I’d like to highlight an event description, date, etc and throw that all into the details section of a new calendar event. Then, on the new Google Calendar event page, I can look at the particulars about the event and type those into the date, time, location, etc fields without having to jump between tabs.
Google Calendar
Most of you are probably thinking, “Um, is it really hard to just commit that stuff to short term memory for a few seconds it takes to bring up Google Calendar and click New Event?”. To which I answer, “Yes, and stop judging me!”

So I went in search of a bookmarklet that could grab text on a page and add it to my Google Calendar. I found Brandon Erik Bertelsen’s post about bookmarklets and shortcut keys which was huge because included a Google Quick Add with a New Tab bookmarklet. This did ALMOST what I needed, but it took the selected text and made it the new event title, not description.

So, since bookmarklets are sooo easy to customize, I grabbed the code and added my own logic to put the selected text into the details, not title. Here’s the new bookmarklet:

New Google Calendar Event with Selected Text as Description.

If you’d like to further customize this bookmarklet, go for it. These Instructions for making Google Calendar event reminder buttons are helpful in figuring out how to craft the final url.

For more info on bookmarklets, checkout my previous post regarding a Supercharged Del.icio.us bookmarklet or read the Wikipedia entry on bookmarklets

Comments
No Comments »
Categories
Programming, Technology
Comments rss Comments rss
Trackback Trackback

« Previous Entries

Recent Tweets

  • I finally found the perfect gift for Nicole: Kickbee lets your baby Twitter from the womb (from @make): http://tinyurl.com/6kwyjy 1 day ago
  • Frick! Upgrading my photo site broke the plugin for displaying photos on my blog. Stupid Dreamhost backup didn't work, so no way to revert. 1 day ago
  • Got to hear the baby's heartbeat again yesterday. Exciting! But this weekend is our childbirth class which I'm sure will freak.. me.. out. 2 days ago
  • This rainy & warm weather is a much needed respite from winter. 65 degrees is awesome. If only it was always like this. Go global warming! 3 days ago
  • More updates...

Recent Posts

  • Hilarious Prop 8 musical hits the right note
  • 100 days and counting!
  • Let the EPA know how you feel about CO2 regulation before Friday
  • Teenage drivers suck because they’re new at it
  • Brilliant vs not so brilliant

Categories

  • Baby
  • Bogdan
  • Books
  • DC
  • Family
  • Funny
  • Green
  • Intellectual Property
  • Mac
  • Music
  • My Picks
  • My Shitlist
  • News
  • Nicole
  • Photos
  • Politics
  • Programming
  • Rant
  • Site-related
  • Soccer
  • Sucks@Driving
  • Technology
  • Traffic
  • Travel
  • Twitter
  • Uncategorized
  • Videos
  • Why?
  • Work

Blogroll

  • ArjunWeb
  • DreamHost Blog
  • This is Bentropy
  • WIP ‘08

Other DC Blogs

  • Beyond DC
  • Live from the 3rd Rail
  • Prince of Petworth

Subdomains

  • JedKnowledgeBase
  • JedWiki
rss Comments rss valid xhtml 1.1 design by jide powered by Wordpress get firefox