Linkedin just minutes ago announced they’ve thrown their hat in the “social application platform” ring! This is exciting news for people who are poised to bring innovative and interesting applications to the business and professional network.

Read more about the press release here at TechCrunch. As of today, there is no documentation or word on how exactly one creates an application for the new platform, but you can contact them to recieve more information!

I have been rolling around the idea of starting up more freelancing to try to bolster my savings for the coming years, so I’ve decided to take on more consulting work. For an indepth look at my work experience and skills, please visit my linkedin profile, here are some highlights.

- 5 years relevant web development experience
I’ve worked a ton with the web, I’ve done everything from ColdFusion to my current favorite, Ruby (and Rails). I have a lot of experience working with JavaScript and XHTML/CSS, very comfortable doing frontend and backend development, as well as database work (although, I don’t want to use the term DBA). If you’d like to see my portfolio, contact me directly.

- Did I mention I love Ruby?
I have done a lot of work with Ruby in the past couple of years, I was highlighted on the RailsEnvy podcast a few weeks ago for a modest open source contribution I made called SmartMonth. I’ve worked on some medium-sized rails deployments, and am looking to grow my portfolio.

- Plays well with others
I love working on small, motivated teams. I always enjoy adding (and learning) from the synergy of a great team. I also test all of my code (quite thoroughly) and won’t break “the build”.

- UNIX Aficionado
I love UNIX, and its my deployment environment of choice, I’ve got a lot of experience working with Capistrano, and am very adamant about automating things wherever possible, and documenting things thoroughly.

- Entrepreneurial-Minded
I have a passion for growing things, I am a very dedicated team member, and am also very aware of the needs of startup-oriented businesses, I’ve worked with a few startups at this point, and have gathered a decent amount of relevant experience helping companies and products grow.

If I sound at all interesting to you, please don’t hesitate to drop me a line, or if you know someone who might be interested in hiring me, please forward my information along and I’ll send you a Christmas card.
Thanks everyone!

Ask yourself, why are we still supporting Internet Explorer 6? Not as developers, but as people who use the Internet. If you are a web developer, you are one of the first people who will scream “I F#$@ this browser!”

So I ask the question, why are we still supporting this browser, 7 years later?

Everyone who is still using IE6 does so because we allow them to. We still add “degraded” support for the browser, we still make alternate stylesheets, we still make a ton of hacks that only work for the redheaded step browser. I dare you, tell me one time you said the word “happy” and “IE6″ in the same sentence! Enough is enough.

The Line in the Sand

I am proposing we set a day to “turn off the lights” for IE6. Much like our government has decided that on a specific day, over-the-air analog broadcasting will go away. Why not do the same? That glorious day, everyone who supports the “lights out” concept, will actively limit IE6 users from accessing their sites and applications. Now, I am not saying lets just let things degrade and look unprofessional, I am saying turn it off completely. Its a rash move right? Does that potential user base you are shutting out scare you? Not really. It doesn’t scare me. Take a look at the global statistics for its use, we are talking about a very small minority of people. But it is still enough to count, and for some reason we still support this aged code.

How can we ever hope to as a community of engineers hope to better ourselves and the things people are using if we have to worry about this sort of legacy. There is nothing beautiful about what it takes to support even the simplest of CSS techniques in IE6, and it just doesn’t make sense for us to keep wasting important dollars on it.

Now, the irrational part of me says, as soon as I hit publish, I am going to block IE6 traffic from ever viewing my blog again. But lets face it, that is not a solution that is going to help people understand the reasons they need to move, nor is it going to make you as a person look very wise. I want to set a date far in advance for existing websites, and for all new and upcoming websites and services, already have it off. Lets say, 10 months from now? That gives us a long time to be able to warn and let people know that they need to upgrade or move to a different browser. I mean hell, by the time that 10 months is up, we should be seeing IE8 in the wild, isn’t that a good enough reason?

Ramifications

Okay, lets be more realistic, the only people who are really stuck with IE6 are the people suffering in cubicles run by IT departments that are either lazy, stuck with legacy issues, or just uneducated about the real reasons to upgrade their company.

Well to that I say, too bad. You have had 7 years to decide what to do about this problem, and I think its unfair for developers to have to pay the price. Why should be have to bastardize our software, and invest a large sum of our time and money into something that has not even been updated since 2004?

I am definitely impressed by companies like 37signals and Apple who are putting their foots down when it comes to their products. Don’t think of it as an exclusive, elitist club, but a very important reason to educate and explain to people (well in advance) why it actually hurts their experience of the web today to be stuck in the past. Going forward our company is going to be following this mantra, educate and upgrade. I am entering a market demographic that will most likely be stale and out of date, but I still say its unacceptable, we as the developers need to help people understand.

Am I crazy? How do you feel about it.

I am going to avoid using the word “stealth mode” for my startup and our product. Whenever I hear someone say their product is in “stealth mode” I interpret that as “I don’t have anything worth showing to anyone, therefore I pretend its more important….mode”. If you are involved in my extended network, you know what I have been doing, roughly. I have not been afraid to brainstorm and discuss this product with people I know and respect because that is how great products are born.

November marks an entire year of incorporated business for my company, Panoctagon. It has been an absolutely amazing ride, I wouldn’t trade any of the past experiences I’ve had for the world. I have worked with a lot of extremely talented people, I have learned and done a lot of things that have nothing to do with software engineering (which has been a lot of fun), and I can say we survived the first year.

We spent a lot of time honing our skills as a group, defining some pragmatic approaches to not only software but our business practices, and have become a pretty efficient group. I am happy about this.

So, what have we been doing? Today I am proud to announce the launch of our first software product, Happening. We have not officially released it into the wild yet, its still got some rough edges and polish that needs to be applied, but its nearly there. Happening is an event management and publishing solution for education. What do I mean by that? Technology in education often is crap. Talk to people who use it, they never have anything good to say about their tools. Ridiculous overhead, costs way too much, and requires a lot of hands on training.

We decided to build an affordable, easy to use, hosted service that attacks the age old problem of managing and communicating events for schools; event calendaring, if you will.

Happening is more than that, though. There are two very important markets for us, the first is the administrative people inside the institutions who have to do all the monotonous data entry, using the advances in technology that we in the consumer web take for granted, we hope to provide an unparalleled experience that is robust and intuitive. Might I also add, you won’t be needing weeks of training, that is our #1 goal. I spoke with a few different schools we are working with on this project and they all pretty much responded “how much training will you be offering us”, and I responded “I a product that hasn’t even been completed yet, is going to have a huge learning curve and weeks of training attached to it, we’ve failed”, and that has been our mantra, from day one.

Happening is not just about the administrators though, its also about the parents and students, and redefining how they interact with the event information that they care about. Happening is going to change the way parents and students consume event information through their schools, and I am excited to see how things changes things for them.

Lastly, I have to ask this, If you know someone who works for a school who might be interested in a service like ours, please feel free to contact me or forward me information to contact them. We are very excited about what we’ve been up to and want to get schools just as excited.

Also, I’d like to thank my team, our advisory board, and my family and friends for their continous support and advice. We would not have made it this far without you all, and I hope we can make this into something great for education.

Our big project at Panoctagon has a lot to do with time and dates, so we’ve been developing a series of Rails plugins that make our jobs easier. I had a lot of fun building this one, and I could see other people finding this interesting, so we decided to open source this one. I think it’d make a great addition to Rails core (if I do say so myself :P), but I am not really up to all the effort involved. Instead I created a simple to use, documented, and tested plugin that works with Rails!

So what does it do? Basically, it makes date month values more meaningful by adding a new Month class that can do complex(ish) calculations against the days of the month for you. It also allows you to treat a Month as an enumerable container, allowing you to iterate through the days of the month like an array.

Lets peek at some example snippets:

Getting The First Tuesday of September 2009

1
2
    Month.september(2009).first_tuesday #=> Date object
    Month.new(9,2009).first(:tuesday) #=> Date object

Getting Every Friday in August 2008

1
2
    Month.august.every_friday #=> Array of Date objects
    Month.new("August").every(:friday) #=> Array of Date objects

Getting Every Thursday and Saturday in June 2007

1
2
    Month.june(2007).every_thursday_and_saturday #=> Hash of Arrays of Date objects
    Month.new("June",2007).every(:thursday,:friday) #=> Hash of Arrays of Date objects

Getting The Last Monday in April 2005

1
2
    Month.april(2005).last_monday #=> Date object
    Month.new("April",2005).last(:monday) #=> Date object

Enumerating Through the Month of August 2008

1
2
3
4
5
   month = Time.now.month #=> Month object of the current time requested
   month.each do |day|
     day.to_s #=> Week day name ie: Saturday, Sunday, etc.
     day.to_i #=> Date value in context of the month ie: 1..31
   end

Other Odds and Ends

1
2
3
4
5
  Month.april.size #=> total number of days in that month
  Month.august.next #=> returns a month object populated with August
  Time.now.month #=> returns the current month in context to the #now response
  Month[5] #=> May Month object access as array index
  Month[:april] #=> April month object access as hash key

So, as you can see, it saves a lot of time and calculations and keeps it easy for you to treat months as essentially a container! Really useful for doing complex calculations against dates.

If you would like to use my plugin, feel free, I’ve released it under MIT, and its located at my github account. Please give me some props if you do, or send me a line.

If you are interested in my rdoc documentation, check our company’s documentation server. Let me know what you guys think!

10 points for most original title, ever.

Lately, my company and I have been looking into the benefits of switching to Git for source code repository management. Its currently the new “hotness” of the hacker world, and with some of the claims that I’ve read, its pretty hard to ignore.

Linus Torvalds has made a few references to how much he hates tools like Subversion and CVS, and he has a lot of interesting reasons for feeling the way he does. I don’t agree with everything, but then again, I am not writing a kernel. Subversion has worked great for me and my team in the past, but we are definitely starting to envy some of the Git advantages.

Its indisputable that Git makes it unbelievably easy to branch and tag your repositories, hands down. The bigger and more integrated my codebase and team is getting, the more of crucial of a feature that is to us. Decentralization is not a big deal to me. Frankly, I never am really “off the grid”, so most times I just do git commit followed by a push.

Fortunately for us, Unfuddle supports Git now, so its easy for us to use our existing project management tool with this new technology, at no extra investment! But, I have to take a moment to say, GitHub is definitely pretty killer. Unfuddle’s support for Git is new and will improve over time, but I am very very impressed with how well GitHub has nailed the integration. The biggest reason for me to move (some) of my code to GitHub is for the public aspect of it. From this point forward, I will be posting my company and I’s open source contributions there. Mostly because Unfuddle doesn’t provide external access to projects in the same way, which is actually sort of strange in my opinion.

Maybe in the future I will be so inclined to product an Unfuddle-Git bridge to keep my repositories (edit: there is one already, why isn’t this a part of GitHub yet?!) synchronized, for projects I plan to open source. Overall, I am pretty happy with Git, I think my initial impressions of it were tainted by the “growing pains” I experienced while trying to get it to work with Unfuddle. Seriously, with GitHub I was up and running with the repo in under 2 minutes!

You can check out my repositories here. There is one project there now that I haven’t talked about too much yet, mostly because I just built and released it in the last 72 hours. More on that soon!

Yesterday I attended the first ever Start Conference, in San Francisco, CA. That conference was amazing, I will without a doubt be attending next year. I learned so much about the core of starting a business in ways that I found truly invaluable. It was a fantastic conference with a fantastic vibe, I highly recommend it to anyone who is in a startup, starting a new company, or just interested in the entrepreneur world.

If you’ve been following my blog, and talking to me with any regularity, it is no suprise I quit the day job and started my own company almost 10 months ago now (wow). I am happy to report I am still standing, for the most part. It has been an absolute challenge in so many ways, and every single thing I’ve learned along the way have been important to put me on the road that I am heading towards now, at quite a rapid pace.

I’ve gone into business with my brother, and although we see eye to eye on many things, at times, we disagree, which I think is healthy. One of the things I heard somebody mention during the conference is “never go into business with family”. I have always wondered in the back of my head, did I do the right thing? After this past week, I really feel like I have. The reason why it works so well for me is knowing that no matter what sorts of fights and challenges we are faced with, at the end of the day we are still brothers, and we have a common, builtin respect and love for each other, which is not something every founder can say about their co-founder.

Its hard to imagine that we’ve been doing this for the last 10 months. We’ve seen growth, albeit modest, but still, growth nonetheless. We’ve been working with a close friend of mine in defining the first product my company will release by the end of the year, and we are all very very excited that its almost worth hearing about.

I’ve never believed in that whole “stealth mode” startup bullshit. In most cases, I’ve never made anyone sign an NDA to find out what I’m up to, quite the contrary. I am excited to tell people what we are doing, because I love to see what they think about it, ask them from their prospective, its very eye opening! The reason I don’t say a lot about what I am doing, even at this very moment, is because we are still forming the concept to be “widely consumable”. Until today, we didn’t even have a true name for the product, just a codename!

What I can say is, its not directly related to the consumer internet. No, I am not building the next Twitter, I am not building the next Facebook, and I am not changing the way people work with spreadsheets. I am doing something to help a market of people who, I feel, have been ignored in the rebirth of internet technologies.

Its a modest goal, I want to help people by giving them what they are asking for…its the true entrepreneurial spirit. Hopefully, in a couple more weeks, I will actually have a cohesive “pitch” thats worth telling people about, I am looking forward to that, very soon.

I am hooked on the religion that is known as GTD (Getting Things Done), and I have also become rather dependent on an application that follows the whole GTD way of, well, getting things done, known as Things. Its a fantastic application! But unfortunately, its not a finished work of art, just yet.

I’ve never played with OmniFocus before, and some people will call blasphemy right about now, but hear me out. The attraction to Things is its simplicity. It doesn’t get in your way with its opinion of how you should manage yourself, it just lets you tell it what you need to do, and its up to you to get crazy with it.

I love that! A tool that simply does what I want to do, the way I want to do it! CulturedCode, the company behind Things, has also released a fantastic Things iPhone app that brings the love on the road with you, awesome! It can’t sync with the desktop YET. Sync capabilities are coming within the next week, and I am very excited about that.

But I didn’t write this post to basically tell you why Things is so great, actually, quite the contrary. I think there are some big gaps in quality in Things, and I am hoping that CulturedCode hears me and maybe takes my thoughts into consideration. Maybe. :)

So, shall we begin?

Web Service Integration
What do I mean exactly? Look at a tool like Evernote. Seamless integration, your information is constantly synchronized. Not with ad-hoc wireless hacks, not with iPhone tethering, not with MobileMe, through good ol’ internets. Why would this be cool?

iPhone App: Include Proximity Capabilities
I have to say, this is a really neat feature of the OmniFocus iPhone app. It gives you your contexts based on how close you are around them, if you define a proximity (via address or something). I would love that!

iPhone App: Voice Notes
Sometimes the last thing I want to do is type on my little screen, I just want to take my “open loop” out of my head and make it go elsewhere, quick and easy! I know, this kind of thing gets dangerous when I talk about web integration, suddenly you’ve got larger file overheads, but compression algorithms can make this not a big deal, per se.

More In-Depth Syncing
What I mean by that is, if I “schedule” a task in Things for a specific day, or even a due-date. It should create a Calendar entry for me in iCal that corresponds. Obviously it has a concrete date (and sometimes a time), that is easily translatable to a calendar event.

That is all that is coming to me right now, really the biggest thing in my mind is web service integration. That would be killer, on so many levels. I really think thats the missing peice to this whole system, in my eyes…its also missing from OmniFocus (I think?).

Either way, Things is definitely worth taking a look at if you are into GTD, and have a mac.

I ran across a pretty amazing story about one of the most “hated” CEOs of the “dotcom” world, Julie Wainwright, CEO of pets.com (you know, the sock puppet company). Although she doesn’t really go into why her company failed, she illustrates 5 mistakes that she had made in the last seven years of her life, and how she moved past them.

Here is an excerpt that totally blew me away:

As the public CEO, I failed, and it was a very public failure. In fact, I was labeled one of the biggest failures ever. How bad was it? I had people laugh in my face when I introduced myself for years after the company closed. It happened as recently as a year ago. A couple of people asked me what it felt like to be one of the best-known failures in the U.S. Most just walked away from me. One woman told me to my face that I was a loser. I could go on and on, but you get the point: I became a symbol for something greater than myself, and we aren’t talking puppet envy here.

That is pretty intense. What a reputation (or lack thereof) to have in a very public way. Thinking about my company and our current growth and blessings, I can’t even imagine how she must have felt. Its almost a gamble, right? Entrepreneurs put themselves out there and really try to change the world in some way, and whichever way their scale tips, really does effect something much greater than themselves.

Julie has moved past her problems and has moved on to her new role as CEO for SmartNow.com. I’d like to take a moment to say congratulations to Julie Wainright for having a pretty amazing amount of determination to do better for herself, and I wish her the best in her new venture.

Congrats, Julie!

When we first moved into our offices on Milvia street, we tried to keep costs low and used our cell phones insetad of buying into a couple of land lines w/ conventional phone service. This worked fine in the beginning, our needs were humble. For the most part, the cell was great, except reception in our building was definitely not consistent, nor reliable.

As we began to do more work with clients and move into new areas of work, we started to rely on our phones a bit more. We also had run into the need to send and receive faxes more than I think we should (anyone heard of e-mail? :)). Basically, it became clear to us that we needed to figure out some sort of phone solution.

At first, I was hesitant to buy into the whole concept of VoIP, even though countless people had recommended it for startups. We don’t have the fastest internet, and our stupid router didn’t support QoS until very recently, so that was another big deterrent to the idea for me. Altough, I was not able to find a conventional phone service that I thought made decent fiscal sense…AT&T wants a pretty hefty commitment for even the simplest plans, I just wasn’t happy with the idea of it. And also, what about PBX type features? Extensions would be nice, how about voicemail? $$$

So, this was becoming a mess for me, once I decided to bite the bullet and find a VoIP provider, which ones are legit? Packet8? Vonage? (short answer, no). I happened to stumble upon a company named Aptela, and started looking into their features. Call trees, extensions, digital faxing (what a concept!), unified messaging, the whole gamut basically. For a very affordable price! We dove in and decided to give them a shot, its something like $60 bucks a month for everything mentioned above.

The system only works with IP phones, so we purchased a couple of $100 Polycom handsets, plugged them in, and suddenly…the stars had aligned and we had a working phone system! To be honest, I was completely amazed with how easy it was to setup, and how great it sounds, even while dowloading large files! (thank you, QoS). Aptela is a fantastic service, so far I have had absolutely no complaints. Everything is 100% web-based and works just fine on my mac, as it should.

So long story short, If you are looking for an affordable, solid VoIP solution, I recommend Aptela!