March 23rd, 2012
Interesting article on Wired.com.
http://www.wired.com/magazine/2012/03/st_thompson_introvert/
Incidentally, it is the third or fourth time in the past few weeks that I have come across a reference to the new book by Susan Cain: Quiet. Looking forward to reading that.
Posted in Books, Developers, Working | No Comments »
February 14th, 2012
Interesting article about hiring here.
Posted in Project Management, Working | No Comments »
February 13th, 2012
A few months ago I stopped posting updates on my Facebook page. Recently I’ve found that I have stopped reading other people’s updates as well. It used to be that I kept up on a daily basis. Now I might check in once every week or two. This trend was not a result of any intentional decision that I made. It just happened. So I asked myself why?
When I started using Facebook, by network was fairly small and limited to a few friends and family. My network is not large by most accounts. But it is diverse and large enough that I feel the need to filter everything I say. I worry that I will offend someone or be misunderstood. And to be completely honest, I worry that I will say something that will not be of interest, even to my Mom.
It seems to me that a social network is useful when there is something shared between members of the network. Maybe it is a topic of interest or some other point of mutuality. My Facebook network no longer has that. Even ‘I’ am not a point of commonality for everyone in my network. There are some people who I added as a ‘Friend’ who are not really friends in any way. They may have been a friend of a friend or a casual acquaintance. So even ‘I’ am not a subject of interest to some of the people in the network. I’m not trying to be self-deprecating; just analytical.
My company has adopted Salesforce Chatter as a corporate social networking platform. I’m not sure that calling it a social network is correct. But it starts to look a lot like that–but for work-related discussions. And since discussions are about the company’s business there will always be at least one point in common for members of the network. And that point of commonality makes the network useful if not interesting. When I consider Linked-in, this also holds true. Linked-in is a network for professional job-search related networking. Maybe the lesson here is that a network with a narrow focus is more useful than a broad network with no particular focus.
I’ve tried Google + with the idea of circles. Maybe the idea of circles is what is needed to allow a large network to be separated into groups. But I wonder if that metaphor will be adopted by a enough people to take root. Maybe the solution for me is to un-friend people and reduce my Facebook network to a much smaller group of friends. Maybe the solution will be some kind of social network aggregator that will do some really smart filtering. I don’t think social networking is going away, but I think it will continue to evolve. I think it will look very different in a few years.
Posted in Technology, Working | No Comments »
December 9th, 2011
I’m taking this “iPad and iPhone Application Development” class done by Paul Hegarty of Stanford. It is available through iTunes U:
http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=473757255
The class is extremely well done. The classes are well paced, packed with information. I particularly like the mix of lectures with slides followed by demos in code. I highly recommend this to anyone learning to develop for iOS.
Posted in iPhone, iPad | No Comments »
December 6th, 2011
I had the opportunity to addend Cocoaconf this past weekend in Raleigh. It was a lot of fun being around a bunch of Mac and iOS geeks. I learned a lot about programming for iOS and got to meet some really interesting people.
Posted in iPhone, iPad | No Comments »
November 7th, 2011
My friend Matt recently posted some thoughts about “What Every *Good* Developer Should Know.” I like his list, but my list is very different so I thought I’d write it down as well.
Here is my list of things that I think Software Developers should know:
0. How to Communicate. Having good written and verbal communication skills is very important. I think this is the only point in common between my list and Matt’s. But I put it first because if someone can’t communicate they aren’t getting past the interview process. Beyond grammar and spelling, can the developer structure their thoughts in a way that makes sense to someone else?
1. How to Learn. Does the developer show that they are continuously learning? Do they love what they do? Do they care? If so they will naturally be learning and developing their skills. If not, they will fall behind.
2. OO Design. I don’t just mean that the developer knows an OO language or that they can define “Encapsulation.” Do they understand why it is important? Will their code be easy to understand and maintain or will it look like procedural code wrapped in a class? (Object Oriented Design Heuristics.)
3. How a computer works. One of my most helpful classes in College was an Assembly Language class. Even though I never again used Assembly Language directly, it gave me a mental model for how the computer works that has been very beneficial in many ways. How could a developer work without that mental model?
4. The Business Domain. A developer should work to understand the business of their company or clients. The depth of knowledge might vary based on role in the company. But a developer should pursue every opportunity to be part of the business.
5. SQL. Being able to construct good SQL statements is hugely useful in many environments. Even if the developer doesn’t have DBA skills, they should still be able to function comfortably in SQL.
6. How to Manage Their Own Projects. I’m not saying that all developers should be project managers. Just that they should manage their own time well, be able to estimate work, plan, create meaningful status reports on their own work, etc. (Software Estimation: Demystifying the Black Art.)
7. Programming Languages. A good developer should know several different programming languages. A developer who has only worked in one environment will tend to be one-dimensional and will see everything through the lens of that language.
8. Design Patterns. Knowledge of design patterns helps a developer write better code, but it also helps him communicate with other developers.
9. Usability. I’m not thinking here about the mechanics of user interface, but rather about creating a user interface that does not get in the user’s way. There are a number of really good resources about Interaction Design and Usability and there are many developers who have read none of them.
That’s my list.
Posted in Developers, Software Development | 2 Comments »
October 5th, 2011
Here’s a good idea:
http://www.taketheinterview.com/
This could be really helpful in the hiring process. Looking forward to trying it out.
Posted in Business, Web Sites | No Comments »
September 24th, 2011
I saw this article just now. The first thought that popped into my head was, “Why would you want to make an iPad a laptop?” Part of what makes an iPad great is that it IS NOT a laptop. But then again I have both an iPad and a Laptop. When I am working I will use my laptop. I am writing this blog post sitting at my desk, using a full keyboard and large screen attached to my laptop. When I want to sit on the couch and read or just check email, I use my iPad. But for some people, I suspect that an iPad would be everything they need. If your only or your primary computer happens to be an iPad, I guess it would make sense to be able to set it up like an laptop for creating documents and the like. It is funny that Microsoft spent years trying to turn a laptop into a tablet. Now, vendors are coming up with creative ways to turn an iPad into a laptop.
Posted in iPhone, iPad | No Comments »
September 22nd, 2011
For the past week I have been using Trello for some lightweight project management tasks. I love how easy it is to use. And the user interface is a great example of what Web 2.0 is all about.
http://Trello.com
Posted in User Interface, Web Sites, Working | No Comments »
September 16th, 2011
MDeverywhere (the company I work for) made the Inc 500/5000 list of fastest growing companies this year. Pretty cool. There are growing pains associated with being part of a company that is growing quickly. But that is still better than the alternative.
http://www.inc.com/inc5000/profile/mdeverywhere
Posted in Working | No Comments »