Ten software technologies that help you avoid unemployment

Source: Internet
Author: User
Tags xsl xslt xquery

December 23, 2009 13:22:39

Keeping up with the development of key technologies is the best way to maintain your edge in the job market and in the future. Are you proficient in the 10-door technology we have listed? Even if it's a master of the ballpark?

I don't know what your specific job is. If you are an expert in an obscure field, or if your company is solid enough to be able to secure your career with your current technology, I don't know if you are in danger of losing your job. In any case, please do not rush to send out those letters that tell me that your company is very satisfied with VB3 or that you will never use other languages except C, and keep those stories. NET will be how to get Java out of the way, how XML will replace relational databases, or how you can write any software in assembly language or C, and any other development tool that doesn't matter.

Now, imagine what it would be like if you lost your job as many of the people who were affected by layoffs and corporate failures. What if you suddenly need to move to the place? What if your company suddenly makes a technical shift?

In the current job market, managers are recruiting employees based on current and future development needs. As a developer, the knowledge you have is the key to your job search and your job. It is important that you understand the direction of technology and keep up with the changes in technology, even if you never have to look for development work.

Here are the top ten most important development technologies I have chosen, the most important of which is in front. After reading this article, be sure to join the TALK.EDITORS.DEVX discussion group and present your top ten selected technologies.

1. XML

First, you need to understand XML. I'm not saying it's just the XML specification itself, it also includes a series of related XML-based languages: The most important is XHTML, XSLT, XSL, DTDs, XML
Schema
(XSD), XPath, XQuery, and soap. Those who have never touched a keyboard in the last 5 years may not know what XML is. XML is a text file that uses markup similar to HTML. XML can define a tree structure and can describe the data contained in it.

The best thing about XML is that it can save both structured and unstructured data. It can store and describe "specification" (regular) tabular data, and can also accommodate and describe "coarse" (ragged) file data.

XHTML is the preferred method of writing HTML today. Because it is in good form (well
Formed) XML, which is easier to handle than an old, often malformed (malformed) HTML file, in XHTML format.

XSLT and XSL are languages used to translate XML files into other formats. The convertible formats include: text files, PDF files, HTML, comma-delimited files, or other XML files.

DTD and XML
The schema describes the types of content that an XML file can contain and allows you to "validate" the content of the XML file without having to write special code to ensure that the content conforms to the rules.

XPath and XQuery are query languages that are used to extract a single project or set of items from an XML file. XQuery extends the XPath, and thus more important. The relationship between XQuery and XML is just like the relationship between SQL and relational databases.

SOAP is a standard communication protocol between Web services. Although you don't need to be clear about the SOAP standard, you should be familiar with the general schema and how it works so that you can apply the technology.

2. Web Service

Web services are a direct result of XML popularity. Because you can use XML to describe data and objects, because you can use schema to ensure that XML file content is reasonable, because XML is a text-based specification, XML provides a very convenient basic format for cross-platform communication standards. If you've never run into a Web service, you'll probably come across it almost certainly in the next 5 years. Familiarity with Web services is important because it is the simplest of all current communication protocols across different machines, languages, platforms, and locations. Whether you need it or not, Web services are an important step towards interoperability.

XML Workgroup Chairman John
Bosak once said that XML "does something for Java." In fact, Web services have something to do with all languages. Web Services enables COBOL applications running on a mainframe to invoke Java applications running on a handheld device, enabling Java
Applets with. NET Server chat, can make the microcomputer software and Web server seamless connection, and provides a relatively easy way, so that enterprises can not only provide data to the outside world, but also provide functionality, and is a language, platform and location independent approach.

3. Object-oriented programming (OO)

Many programmers still think of OOP as a technology in the ivory tower. But if you think about what language has dominated the past 10 years, you will understand that OOP is not a technology in an ivory tower. OOP starts with Smalltalk and uploads to C + + and Pascal
(Delphi). Java has made OOP stride into the mainstream, and a few years later vb.net and C # have fully established the dominant position of OOP. Although most of these languages do not require you to have OOP, I think if you do not understand the basic concepts of OOP and do not know how to apply these concepts, you can find less programming work.

4. Java, C + +, C #, and vb.net

I'm not suggesting that you become an expert in every language. My reason: one of the most effective ways to learn programming is to look at the code, and the vast amount of code you can see is probably not written in your favorite language.

In the past few years, the ability of languages has been getting closer. You can now write Windows services, Web applications, or command-line programs with vb.net. Even if you use only one language, you should also learn some other languages so that you can read the examples and translate them into the language you use. These 4 languages are the basic core, and there are other languages that meet different needs, such as Fortran, COBOL, APL, ADA, Perl, and Lisp.

5. JavaScript

Although the names are somewhat similar, Java is not associated with JavaScript. Why is a scripting language so important? Because all major browsers use JavaScript. If you need to write a Web application, you have enough reason to learn JavaScript. JavaScript can be used as a server language for ASP or ASP, or as a functional language for extending XSLT (functional
Language). JavaScript is the preferred language for activating XUL-based program interfaces in Mozilla/netscape. A variant of JavaScript ActionScript is flash
The programming language for MX. In the future, JavaScript is likely to become a programming language for new devices, as well as a macro language in large application software.

The opposite of JavaScript is VBScript. Although Microsoft's software has good support for VBScript, VBScript is likely to be a bad choice in future development efforts. Microsoft is also inclined to write client programs with JavaScript (or Microsoft's own variant: JScript). When choosing a scripting language, select JavaScript.

6. Regular Expressions (Regular Expressions)

Lookup relational database can use SQL, query XML can use XPath and XQuery, query plain text file can use regular expression. For example, you can use a command to find and delete all comments from an HTML file. Some simple text query functions built into various development languages, such as the "IndexOf" function or the classic "InStr" function or "like" operator in VB, cannot be compared with regular expressions at all. Now, all major development languages provide a way to use regular expressions. Although the regular expression itself is difficult to read (a throwback to the early computer era), it is a powerful and underutilized tool.

7. Design mode

Just as OOP by classifying objects to simplify programming, design patterns categorize the interactions between some common objects and give an appropriate name. The more OOP you use, the more useful design patterns will be. The names of some of the most commonly used patterns have become the common terminology used in the field of software development, so to keep up with the mainstream of information, you need to have a pretty good understanding of design patterns.

8. Flash MX

If you need to get more graphics and more programming features on the client than HTML and CSS, Flash is your answer. Programming Java with Flash
Applets or write. NET code is much faster and much easier.

In the latest version (MX)
, Flash is not just a tool for drawing and animating, it has become a powerful development environment for programming: the ability to invoke soap
Web services, you can also invoke ColdFusion, Java, or. NET programs on the remote server. Flash is everywhere. Its engine exists in most of the world's client computers, including handheld devices, sticky boxes, and even new writing pad computers. So using flash can greatly expand the application scope of your program.

9. Linux/windows

Familiarity with Linux. Install Linux on an old machine or on a new machine. Download the graphical user interface and write some programs based on it. Install Apache and write a Web application. The world is no longer just windows, and this trend is likely to continue. If you're a backbone Linux developer, abandon your hatred of windows and see if you can do some Windows programming. There's a reason why windows can continue to be king on desktops, not least because Microsoft controls the market.

No one knows when your company will decide to switch from Linux to Windows (or from Windows to Linux), or you want to jump to a company that uses another platform, or you come up with a good idea for developing a killer software, so you want to have programming experience on different operating systems.

Ten. SQL

Although SQL is not as new as the other technologies discussed in this article, and the importance of SQL is likely to decrease over the next 10 years, it is still a basic skill. Many developers have not mastered the technology or mastered it enough to use it efficiently. Instead of relying on SQL generators with a graphical user interface to do things for you, you can manually write query commands yourself until you are familiar with the basic SQL syntax. Understanding SQL will not only help you learn XQuery in the future, but you may also find ways to simplify or improve your current project at once.
Cultivate curiosity

Finally, (yes, I realize this is the 11th technology), Curiosity is your most important skill. To try a variety of things. New languages or technologies may or may not be useful for your current or future work, but not everything you learn is for work. Don't be afraid to fail, everything starts hard, so is learning new technology. Most of the failures are because people want to learn too much too soon. Be satisfied with every bit of progress, and don't let time (or lack of time) hinder you. Instead, you have to schedule time to watch, study, and experiment with new development techniques and tools.

You may never need to be an expert on these technologies, and my choices may not be right for your particular situation, but by fostering curiosity you will find what you should know.

Ten software technologies that help you avoid unemployment

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.