I saw this InfoWorld article entitled: “Five ways to drive your best workers out the door“, and thought, instead of linking to it, I’d talk about how we try to keep talent.
One of the blessings of working at my company is the great talent I get to work with. I get to see tons of brilliant code on a daily basis, and as a manager its always a concern when working with talented people. But we try to create an environment thats a bit different from other software companies.

Mistake No. 1: Keep the creative juices bottled up. – The article describes clashes between programmers and management on the best route to take. Fortunately here, we have brilliant ideas coming at us left and right, and the problem has been keeping a lid on them and prioritizing them using a formal change control process. The team meets twice a week, everyone has access to walk into anyone’s room, and ideas get approved based upon priority and impact, not politics. Its fortunate that we have such an environment. The key is not nly having an evironment like this, but also keeping it. And yes, we allow programmers “officially” 2 hours of R&D time each week.

Mistake No. 2: Micromanage your staff. – Over-burdensome paperwork, lack of trust, and management having to check each and every day (if not several times a day), all add up to a culture of micro-management. Don’t get me wrong, our company is the most metric driven organization I’ve worked with, but we do it in stride. I meet with Senior members of the team daily, take part in cross-department upper-management meetings daily, and hold a department meeting twice a week. We all know what each of us is working on, I have metrics I have to sign off on at the end of the week, and most of all, we all trust each other to get the work done. Whenever things need additional clarification, we schedule meetings or meet ad-hoc. Team members always feel empowered that they have others support to get things done.

Mistake No. 3: Deny new opportunities and challenges. -While training funds are tight now a days, developers are encouraged to read blogs daily, and keep up with the world out there, and life on the bleeding edge. There is a constant influx of ideas, areas to do self-learning, and time to do R&D. I’m also working on having people come up with more and more ideas themselves. We’re always throwing new challenges at developers, breaking new ground in development, and stretching our understanding of web applications. We’re also always going back to do refactoring, re-visiting and optimizing old code can be a great challenge as well.

Mistake No. 4: Don’t listen to your employees. – This one is a no brainer.

Mistake No. 5: Change the work environment without considering the impact on employees. – We have a high bar for hiring, and a high bar for firing. Both are extemely rare, and we know the introduction of one person to the team changes the complete dynamic inside the department. This is where we look for talented employees who are not only skilled technically, but people-wise as well. It all comes out in the interview process. And we consider them as well. As a member of the management team, I have more and more says on how employees work load gets assessed, and how we keep them engaged on the mission of the company. Radical shifts are severely discouraged, and if warranted, we look to get everyone’s buy in. No one should feel like they were broadsided.

Don’t believe me?
“Intel on Thursday showed off a wireless electric power system that analysts say could revolutionize modern life by freeing devices from transformers and wall outlets.”
Relevant news stories:

I was wondering if anyone has done this successfully, but how would you restrict concurrent logins in a CF app?
Ideally, you could tie username to a live session, and on log out or timeout, drop that username/session combo, and allow further logins. But this type of solution is unreliable in my experience.
Is there any 3rd-party tool, framework plugin, or CF app, that can do this well?
We could have several options:

Looks like there has been a bit of controversy surround the ECMAScript standard and Javascript 2.0. Some new stuff has been “tossed”, and they are focusing on a new standard named “Harmony” hoping to “mend fences” and bring people together. Good to know.
Here is a summary from the article: “The Ecma International standards body scraps its ECMAScript 4 effort to pursue a project called “Harmony” that aims at mending fences between warring parties. With Microsoft and Yahoo on one side and Adobe, Mozilla, Google and Opera on seemingly another, Ecma moved to take the middle road. ECMAScript 4 was to become JavaScript 2.”
Read more @ http://www.eweek.com/index2.php?option=content&task=view&id=49232&pop=1&hide_ads=1&page=0&hide_js=1.