Last week we had our company Users Conference. At the UC, the Android (and iPhone) applications we have been working on were debuted. It went over very, very well. It seems now much of my time is going be spent doing Android development a work!
In other news, I’ll be presenting on Android Development at the Tech Mixer University event on October 5th.
Things are coming along nicely. So again, rules for breaking catch 22…
1. Work very hard.
2. Study very hard.
I don’t care what anyone says, with hard work and dedication, you can do anything you want to do.
It seems the journey to break catch 22 has come to an end. Today marks a very long road crowned with success. As of July 30, I will be moving to a full time development position. On top of that, I will be taking over as the manager of the group to which I belong.
As another plus for the day, it seems the Android work is finally getting some momentum and we will be kicking off a series of basic apps to interface with our software. I will be working closely with our iPhone guy to build the Android equivalent of what he is doing.
It has been a very long day and I wish I could think of more to say. I’m not sure what will become of this blog since the reason behind putting it together is over. Most likely, it will just become a place for me to share cool technologies I come across and cool things I am working on. That all remains to be seen.
Lessons learned: Work hard, stay excited about technology, and don’t give up.
Recently I wrote a post, which I later deleted. I had started looking at working on a project called Evennia. It is a MUD/MUSH server written with Twisted and Django. My initial impression was that the project needed everyone to come together on a demo game, so people who were interested in using the code base would have something to go on. The idea was well received, however I realized it would pretty much just be me starting out. I was OK with this, until I got into it more. I realized that evennia was more of an engine that can be used to create a MUD engine. Much work would need to be done to get things into a state where it could be usable for a game. Looking at the MUD landscape, I don’t think my time would be well spent in a project to build the MUD engine. If the core code base were headed that way, it would be fine, but this isn’t the case. The core devs are interested only in the engine itself, not building a workable game from it.
Lessons learned: Put a little more effort into watching the community and reading the code/experimenting before you overtly volunteer on a project.
While I may have gotten a couple of people interested in doing more with evennia, I probably now look like a jerk. Oh well, on to other things and hopefully areas where my contributions can apply to a project that will see fruition. At the moment, I am closely looking at http://openhatch.org. Their entire purpose is to connect people with projects that could use their help. What a great idea. I’m thinking open hatch itself may be the project to contribute to. This time, I’ll spend a little more time checking it out first. On the upside, the project is done in python, with Django.
Today is the last day of PyCon 2010 and I am waiting on the next talk to begin. I’ve learned so much that, at times, I thought my head might just explode. Sessions run until 5pm, with Open Space sessions often running past 10pm. There are so many really smart people here and it is easy to get caught up in a conversation with someone you met just moments ago.
I think coming to PyCon may have been one of the best things I have done for myself in some time. It’s truly and amazing language and coming to a conference like this just lets me know that I am on the right path. I got the great chance to meet and speak with the folks doing the Jython work and that may be the way for me to do more python at work, considering I work for an almost 100% Java shop. Most of all, I take away from this that I need to get more involved in the community and do even more than I do. To get hired doing python, it’s probably best to get your name out there and be active. The community is small enough that it really shouldn’t be that hard to get your name known. So that is my goal for the next year, get my name known. Part of this will be running the Birmingham Users Group, part if it will be maybe helping with documentation and such for Python.org, part will be getting involved and coding on some open source projects.
Serendipitously, it seems PyCon 2011 will be held in Atlanta again next year. I will surely be here, regardless of what it takes to make that happen.
Lessons learned: If you really care about software as more than just your day job, get involved with the open source community in whatever language you have chosen. Take part in your local users groups. Get your name out there and do something to be a part of the community. Attend a conference, especially if it is one that is small enough that you can feel significant. If you are still searching for one, let me suggest the Python community. It really does rock!
This past Thursday was the first official meeting of the Birmingham Area Python Users Group (PyHam). I volunteered to do the first presentation, which was an overview of unit testing frameworks in Python. I thought the presentation went very well. I’m very interested in testing, and know that I should be, but getting started can be the hardest part. It was very interesting to hear the take others have on the subject and to hear most everyone else admit that they feel the same way I do. The biggest lesson I took away from the meeting is to always make sure you right your code to be tested, or you will never write the test.
Well, I didn’t get exactly what I wanted, but welcome to life. I got a no go on the title change. Apparently it isn’t safe being a “developer” here at the moment, and it wasn’t a good idea to place that title on me. I am going to get more development work sent my way, which is really what I wanted in the first place. The goal of the title change was to get people to do this, so maybe that will be a success. It looks like I need to keep a little more of the work I filter in, for myself.
Since I am actually much happier doing Python and Django work, this may not be such a bad thing. As far as I can tell, I’m one of the safer people around here should layoffs start up again. That gives me a good foundation for which to work on my side projects, and launch into that work full time once the economy picks back up.
In other news, the Out of the Darj website is coming along well. I’ve got just a few pages to go and some design work left and we should be ready for the initial release!
Lessons learned: Your enthusiasm doesn’t count as much as the bottom line. Making yourself a niche keeps you safe in tough times and sometimes that’s all you can ask for. I think it’s better to be a little frustrated and safe, than it is to worry about paying the mortgage.
That’s a heavy title for this post. I’m referencing an article by Justin James. In the article, the author makes the point that, in today’s world, you can never really become an expert programmer, due to the complexity of the languages and frameworks. He makes a great point. This is one of the reasons why I’ve found it so difficult. It isn’t just a matter of knowing Java, you have to know a laundry list of frameworks to really do anything or get that next job. He says the trick is not knowing everything, but being enough of a generalist that you know where to look. I’m finding this especially true in web development where it takes two to three different languages just to work on the GUI. It’s a good thing we love learning so much…
Lesson learned: You don’t have to be an expert in everything. Get good at a few things and make sure you know where to find the answer for the rest.
I just finished reading the book, The Passionate Programmer, by Chad Fowler. If you read one inspiring career book this year, this book should be the one. It has been a while since I’ve read such a motivational book that doesn’t just repeat the same old stuff.
The book talks about the things that make you a remarkable programmer and will help you build a remarkable career. For instance, the book mentions that many people come to IT because they think it will be a lucrative career, not because they love it. I see this in my day job. I can look around and see people who are only there to collect a pay check and could care less about technology past the door of the office. Do they go home and study to stay up on the latest trends and developments…nope. To really make it successfully in this field, you have to be passionate about what you do. To be passionate, you have to really love it.
At the same time, the Author urges you not to be dogmatic about your choice of technologies. This makes since considering how fast the technologies can change. Ten years ago, dynamic languages were virtually unused and today, thanks to many web frameworks like Django and Ruby on Rails, Python and Ruby have really taken off. Back then, you were cutting edge if you used Java and now that same decision is playing it safe. The Author also mentions that while you should plan your career, that planning should be more Agile rather than following a Waterfall approach. You must be willing to bend with the tides and adapt yourself and your skill set.
- If you want to be great, you have to be passionate about what you are doing.
- Be willing to change you focus. Don’t get so caught up in a particular technology that you don’t see it all changing around you.
I often enjoy listening to Podcast on my commute and recently discovered The Pragmatic Bookshelf Podcast. This morning, I found myself listening to Chad Fowler speak on the his book, The Passionate Programmer. In this discussion, he mentions that, in today’s economy, the standard process of sending out resumes and posting on job boards isn’t working. You have to stand out to get noticed and to get hired. A large part of this is networking.
I’ve been attending the local Java Users Group and have met some great people. Not only do these contacts serve as possible contacts for future positions, but many of them are experienced developers who are there when you need to ask a question. I think it is a must that you find any local technical (or business) organizations that interest you and start being active in that group. You will thank yourself for the effort you put into it. This theory was supported by a recent article on Forbes.com. In addition to recommendations of volunteering at non-profits to get experience, you also gain contacts which may lead opportunities in the future.
From the Forbes.com article:
The key to finding a job in this economy, particularly if you don’t have much professional experience, is networking.
Lesson learned: You gain more from volunteering and attending meetings that just learning or gaining experience. You make important contacts that may become sources of help or opportunity for your progressing career.