Browse DevX
Sign up for e-mail newsletters from DevX


The 10 Technologies that Will Help You Stay Employed : Page 2

Keeping up with key technologies is the best thing you can do to give yourself an edge in the employment market now—and in the future. Are you at least semi-proficient with all 10 of the technologies on our list?




Building the Right Environment to Support AI, Machine Learning and Deep Learning

The Last Five
6. Regular Expressions
You search relational databases with SQL, XML with XPath and XQuery, and plain text with regular expressions. For example, you can do things such as find and remove all comments from an HTML document via a single command. The simpler text-searching functions built into the various development languages such as "IndexOf" or VB classic's "InStr" function or "Like" operator are no match for regular expressions—and every major development language now provides access to a regular expressions implementation. Although the expressions themselves are difficult to write and even more difficult to read (a throwback to earlier days of computing), they're a powerful and underused tool.

7. Design Patterns
Just as OOP simplifies programming by letting you collect and classify objects, design patterns classify common object interactions into named patterns. The more you use OOP, the more useful design patterns become. The most common patterns have names that are working their way into the common development argot, so you need to understand them at least well enough to keep up with the general flow of information.

8. Flash MX
When you need more client-side graphics and programming power than you can get with HTML and CSS, Flash is the answer. Programming in Flash is much faster and easier than programming graphics applications with Java applets or .NET code.

In its newest version (MX), Flash is not just a drawing and animation package, it's also become a highly programmable application environment. and it's capable of consuming SOAP Web services and calling ColdFusion, Java, or .NET code running on a remote server. Flash is ubiquitous; its runtime is on most of the client machines in the world, including handheld devices, set-top boxes, and even the new Tablet PCs, so using it may actually extend your programs' reach.

9. Linux/Windows
Get familiar with Linux. Install it on an old machine—or a new one. Download the GUI interfaces and program some applications on it. Install Apache and write a Web application. The world no longer belongs exclusively to Windows, and that trend will probably continue. In contrast, if you're a hard-core Linux developer, drop your antipathy toward Windows and see what you can adopt. There's a reason why Windows is still king of the desktop—and it's not just that Microsoft controls the market.

There's no telling when your company may decide to switch from Linux to Windows (or vice versa), or when you might want to switch to a company that uses a different platform—or when you might come up with the next killer application idea—so you should try to gain experience on more than one platform.

10. SQL
Although SQL isn't as new as most of the technologies discussed in this article, and it's likely to diminish in importance over the next decade, it's still an essential skill—and one that many developers either don't have or understand only well enough to use it inefficiently. Don't rely on GUI-based SQL builders to do the job for you; write your queries by hand until you're comfortable with the basic SQL syntax. Not only will understanding SQL now help you learn XQuery later, but you may find ways to immediately simplify or improve your current development projects.

Cultivate Curiosity
Finally, (and yes, I realize this is No. 11), the most important skill you can acquire is curiosity. Try things out. That new language or new technology may or not be important to you in your present or future job; but not everything you learn needs to be job-focused. Don't be afraid of failing; it's always difficult to be a beginner at any new technology. Most failures happen because people expect too much of themselves too fast. Be satisfied with small steps, and don't let time (or the absence of it) get in your way. Instead, make time to look at, research, and test new development techniques and tools.

You may never need to become an expert in any of these technologies—and my selections here may be way off-base for your particular situation—but by cultivating curiosity you'll find out the things that you do need to know.

Editor's Note: Go to the talk.editors.devx discussion group now to assess Russell's picks and to contribute a list of your own.

A. Russell Jones is the Executive Editor of DevX. Reach him at .
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date