Algorithm: a set of rules for solving a problem in a finite number of steps...but a mathematician can't get royalties every time someone uses a formula that they discovered, which also is like an algorithm. The question is pretty important because most developers don't write all of their code from scratch, but rather find examples (whether it is from a textbook, a blog, or MSDN) of the types of things they need and modify those examples to fit their specific problem. Similarly, people have patented some things about the internet and web development that you would never guess. Google actually patented the design of their own homepage and search result pages: which means that if you design a site that looks too much like theirs, you can be sued. Considering the simplicity of the Google home page, it seems like it would be easy for someone to unknowingly violate a patent and end up in legal trouble. Security is also a big issue. One of my company's sites was victim of two SQL injection attacks in a row a few years ago. As soon as the site was back up from the first attack (but before a fix was put into place to close the security hole), a second attack occurred. For those who aren't familiar with this, a SQL injection attack is when a hacker uses the input forms on a website (for example, a member registration page) to insert new commands to the database. This allows the hacker to get user ids and passwords or create a new user account and completely change the database to their own liking... or worse, gain access to private member information of customers. Thankfully, SQL injection is an issue mainly with older web development technology, and the site in question is being redesigned in newer versions, but every time we develop a new form of technology to fill one security hole, more holes end up being created. Staying ahead of the hackers is a never-ending job. That's why, whether you're dealing with intellectual property issues or security problems, the best way to defend yourself is to be thoroughly informed and stay thoroughly informed. IT is the wrong field to be in if you are not prepared to be a lifelong learner.
Posted by on Sun, 14 Feb 2010