I would like to share with you some of the benefits of computer programming as a career, but before we explore these benefits let’s take a quick look at our definition of computer programming.
There are actually many definitions of computer programming, but to keep things as simple and relevant as possible I would define computer programming as a skill that gives us the ability to communicate with our computer in a language that they understand so that they can do certain things for us.
A daily example of this would be running a spreadsheet program, a word processor, or an email program. For example, we can use a spreadsheet program before it is loaded and activated by a computer. When it is loaded and activated the program is said to be “running”.
Therefore, the job of a computer programmer is to write instructions that are written in a language that the spreadsheet program can be understood by the computer. This set of written instructions is commonly called a software application or computer program.
Since computers are much smaller and cheaper than those obtained decades ago, we see that there are many more potential clients who need a variety of applications. Just like there are many clients who need exterior commercial painting services!
More importantly, many of these computers are connected together with the widespread availability of the Internet. This is why a career as a computer programmer is definitely worth considering.
However, after saying all this, we need to keep in mind that computer programming is not for everyone, but if you fit the bill then a whole new world is waiting for you and you will find yourself limited by your creativity and imagination.
Now here are some advantages of taking computer programming as a career.
1. As a computer programmer there is usually a strong demand and so you are more likely to get a job or leave the job if you already have one.
2. When working in this space you will usually find that flexible work time is an option.
3. In many cases there is the potential to work almost anywhere instead of traveling.
4. The computer programming space is usually a result-driven environment rather than politically-driven – although we can never completely escape from politics because we are human beings.
5. It can be quite profitable as a career.
6. Often there will be opportunities to work in a team with other like-minded people.
7. You will have the freedom to work with your own hands if needed or desired.
8. Depending on your preferences and where you want to be, you will have the mobility to move around in different industries.
We just scratched the surface here because there are so many more benefits to explore. In fact, I will write some more articles to cover some of these points in more detail so please be careful with them!
If you intend to end up being an effective computer system programmer, or perhaps if you desire to discover computer shows, below is several of the prominent programming languages that are most required on the market and can meet all sort of programming problems.
The standard C.
C language is thought about the basis of high level programming. Made by Dennis Ritchie in 1969, C is a mobile programs language. The developer manages the memory himself in C utilizing pointers idea and also vibrant memory allotment functions. It is extremely rapid and also very easy to learn.
System shows with C++.
In 1981, Bjarne Stroutstup added some things includes to the C language and also it was referred to as C++. It makes use of the principle of classes as well as objects permitting reusability of code quickly. Memory management is done by the developer as in C making use of pointers as well as features. The different classes in a program can inherit the buildings of other classes as well. It is the best tool when system programming is considered
. NET sustained C# language.
Microsoft designed a new language from popular programming language C++ to sustains its brand-new platform,. NET system. It was called C# or C sharp. The features included properties from lots of languages including Java. The language can be installed in HTML codes and the pages created are usually called ASP, energetic web server pages. It utilizes a typical language runtime library. It is a simpler language as compared to C++ and all C++ codes can be conveniently transformed to C# code.
PHP – the website home builder.
PHP is a totally free device to construct website. It was developed by Rasmus Lerdorf in around 1995. PHP means Personal Residence Pages. It is an open resource programs language as well as is a things oriented language. It is written in the kind of manuscripts as well as embedded in HTML pages as well as runs server side. It can be quickly attached to database software application like My SQL as well as can be used to manage big data.
Create applications with Java.
Java is a popular shows language created by Sun in 1995. It is a complete things oriented programs language and can be made use of on any system. It is extensively utilized in web applications as well as can be embedded with HTML pages. It gets rid of a number of the disadvantages of C++ as well as introduces several brand-new ideas like information hiding, abstraction, inheritance, and so on. The Java programs are fairly slower than C++ programs yet the list of features and also security in Java overtakes this drawback. It can be conveniently attached to databases using Java Data source Connection (JDBC).
Make dynamic Websites making use of JavaScript.
Created by Netscape, JavaScript is a popular programs language made use of to add dynamic building to the HTML pages. It is a scripting language typically installed in HTML codes. It sustains all the properties of Java and also is total item oriented. It is made use of for customer side handling and produces visual interfaces for your web applications. It can likewise be made use of for configuring the XML based graphical user interface. XML is an additional popular programming language utilized for database monitoring.
General readiness is the subsequent advance to take during the time spent making sure about an employment as an expert software engineer, the initial step being to do your primer exploration. You do starter research to home in on precisely the thing material you will plan during the overall planning stage.
General arrangement is tied in with gaining the fitting information and practices needed to traverse a prospective employee meeting. The objective here is twofold. Right off the bat you need to understand what your potential boss anticipates that you should know, as an essential to giving you a work. Furthermore you need to act in the suitable way in which your boss anticipates that you should act, to feel great about working with you.
The issue numerous individuals face here is that they attempt to run prior to strolling. They jump straight into general planning without an appropriate observe. The individuals who have done the proper fundamental exploration will find that they have a much more clear thought of what general arrangement to do as a feature of their mission.
As consistently the nature and amount of general readiness required will rely upon whether you are at the amateur, middle or progressed phase of your PC programming vocation.
In this article I will zero in on the overall arrangement needed for the apprentice. To some degree two and three, I will give more explicit tips and pointers for the individuals who are at either the middle or progressed phase of expert PC programming.
General Preparation for the apprentice
As an apprentice having done your fundamental exploration you will have a level of lucidity encompassing the sort of job you need to seek after as an expert software engineer.
So the thing would you say you will do now?
I would suggest that you approach the issue from three distinct headings.
1. Get specialized preparing in the dialects and working frameworks needed to perform at work.
2. Get data with respect to the business space of your objective enterprises.
3. Get talk with preparing focused on explicitly around the sort of occupation you are going for.
Specialized Training
As a novice you ought to have a consciousness of your supported learning style. How best do you learn? Improve in a gathering? Or then again are you more amiable to balanced instructing. On the other hand would you say you are adroit at getting things essentially by understanding books or site postings?
Consider cautiously prior to casting a ballot with your wallet concerning any costly courses which guarantee moment results. From my own experience I have discovered that it takes much in excess of a course to perform at the degree of mastery needed as an expert software engineer.
Additionally consider cautiously prior to setting out on a purchasing binge of either electronic or actual books around your subject. I know a self-educated Java engineer who valued how little he really spent on books. He was talented at fishing through sites and downloading all the free data needed to develop his ability.
The advantage of purchasing books straightforwardly is that on the off chance that you purchase the correct books by the correct writers you could save yourself a lot of time. With the gifted utilization of Google you can typically decide if others have discovered a book valuable.
For me by and by the best method to gain specialized information has been to work with individuals who as of now have this information while enhancing this training with extra perusing of suggested material.
Finding out about the business space
As an expert software engineer you won’t programme in segregation. There is normally a reason or motivation behind why you will be entrusted to program. This may seem like expressing the undeniable yet even experienced software engineers now and again commit the error of not learning enough about the matter of their customers
Numerous years back I was attempting to find my first PC programming position with an insurance agency. Following my impulses I called the organization switchboard and requested to address someone who could give me insights concerning the organization, for example, when it was established and so forth This was long before web programs and for sure Microsoft Windows. The accommodating individuals I addressed send me a handout containing definite data about the organization’s prime business territories.
Outfitted with this data I went to the prospective employee meeting and landed the position.
These days with the web available to you there is not really any need to settle on telephone decisions to get this sort of data about the business foundations you are hoping to work with.
Getting meeting preparing
This can be a precarious one. On the off chance that you have never been met for a PC programming position, at that point you may discover the experience very overwhelming. Eventually experience is the best educator here. It will improve with training. You can anyway hamper cycle to a limited degree by zeroing in on meeting abilities and staying alert that you should not underestimate this. Your trustee web companion can present sites, talk discussions, articles and books around how to improve this cycle.
The human mind is intended to accept whatever we put into it. The mind doesn’t mind whether the data be truth or fiction, it will at present acknowledge it. The cerebrum resembles a gigantic PC programming information base that will take in whatever we feed it, be it certain or negative. Our minds are a psychological PC. A software engineer makes, composes, tests and troubleshoots programming with the goal that the PC can perform explicit activities or assigned errands. Our brain works a similar way. We are our own software engineer, the PC being our brain and the psychological programming we permit to fasten to our psyches is our psychological programming. Whatever you store into your psychological PC, the mind saves its for all time. Additionally, at all you tell your psyche the most, the mind will naturally acknowledge it as a fact.
Our brains may not acknowledge something that is heard intentionally from the outset yet our psychological information bank is as yet taking it in. This is mental programming. Our opinion, feel, accept a lot as realities are the side-effects of the projects we have. This basically implies that all the negative and positive messages that we have when we were youngsters as of not long ago were programs that are as yet put away in our psyches. A great deal of us grown-ups still grapple with a portion of the old programming that was imparted in us as a youngster. In the event that you are having issues battling with difficulties, examples of negative self-talk and messages that you got in your childhood or grown-up life, it is the ideal opportunity for you to investigate and fix your psychological programming. At a certain point of time or another, we have all been exposed to negative messages whether they were verbal or non-verbal. Unfortunately, it leaves a great deal of good people with scars they convey alongside them all through their grown-up lives.
Consider how frequently you can review somebody around you or perhaps yourself being informed that they were not shrewd enough, they were no-gooders, they couldn’t accomplish certain objectives that they had set in their psyches to achieve and so on I can promise you have heard more negative messages in the course of your life than positive. This is only the manner in which the normal individual behaves through words, deeds and non-verbal communication. Negative considerations and messages have been imbued in us so long that our psyches wind up getting the message and tolerating it as a reality despite the fact that, it isn’t. We don’t need to perceive that we got the message to disguise it. This is the means by which the human cerebrum works. Our minds just projects it into our psychological information bank and continues on ahead.
Our Creator initially planned for us to be an ideal creation not loaded down with negative imperfections. Because of the fall of man that occurred a huge number of years back, we need to now manage the negative inward battles and difficulties that have been passed down from earlier ages. Truly, the way toward improving our psychological writing computer programs isn’t the most lovely of life occasions however the fallout can and will be fulfilling. Changing your psychological programming can assist with achieving light in your future and furthermore permit you to be a reference point of light to another person.
Getting a “infection” on your PC can be a basic inconvenience or an overwhelming occasion contingent upon numerous variables, not least which bug you got.
So, what we call a “infection” is a PC program that can repeat itself and spread starting with one PC then onto the next. The expression “infection” is additionally normally, yet mistakenly used to allude to different kinds of projects, which incorporate however are not restricted to promotion product and spy-product programs that don’t have a conceptive capacity.
The first researcher to speculate about infections in quite a while was John von Neumann in 1944, when he gave a progression of talks in which he examined the event of self reproducing PC codes.
One of the first infections was “Creeper”, written in 1971 by Cambridge, Mass. based developer Bob Thomas. It was deliberate, written in-house and conveyed over an organization without malignant plan. The code had the option to repeat itself and spread to different PCs on the ARPANET, which was a DARPA supported archetype of the Internet. This infection didn’t cause a lot of harm yet it was confirmation of the hypothesis with respect to self imitating code.
The topic of which has been the most noticeably terrible infection till now is available to a great deal of discussion, yet positively scarcely any will differ that the ILOVEYOU bug has been the most harming.
This is likely the most notable infection ever as it contaminated many home PCs. The infection spread by sending an email professing to be a letter from a mystery admirer. When opened, the worm recreated itself and stowed away in a few records on the PC. It opened a connection called WIN-BUGSFIX.EXE, which, a long way from fixing the bug, was really a secret key taking application. The ILOVEYOU bug caused an expected $10 billion in harms.
As per Eugene Kaspersky of the counter infection organization Kaspersky Labs, in 2011 new infections and variations were being recognized at a pace of 70 000 every day!
The aggregate term “malware” is frequently utilized for all bugs and incorporates infections, PC worms, Trojan ponies, most root-packs, spy-product, untrustworthy advertisement product and other malignant or undesirable programming.
Wikipedia characterizes Malware as; “Malware, short for vindictive programming, is programming utilized or made by programmers to disturb PC activity, assemble delicate data, or access private PC frameworks. While it is frequently programming, it can likewise show up as contents or code.’Malware’ is an overall term used to allude to an assortment of types of unfriendly, meddlesome, or irritating programming.”
Genuine infections are once in a while mistaken for worms and Trojan ponies, which are actually extraordinary. A worm can misuse security weaknesses to spread itself consequently to different PCs through organizations, while a Trojan pony is a program that seems innocuous however shrouds vindictive capacities. Worms and Trojan ponies, as infections, may hurt a PC framework’s information or execution. Some infections or malware have manifestations observable to the PC client, however many are secret or never really point out themselves. Some infections do nothing past recreating themselves.
Since the expression “malware” is likewise one that causes a ton of discussion some security experts like to call them “parasites”. This more extensive portrayal from science characterizes a parasite as “a life form that has supported contact with another creature to the burden of the host living being.” (The Art of Being a Parasite, by Claude Combus, 2005 )
As should be obvious, there are an assortment of malware that can contaminate your PC, it is ideal to utilize a multi-pronged methodology which includes utilizing a few programming projects to discover and eliminate them.
Every year there are a large number of various sorts of PC programming that come to be accessible. Individuals are consistently looking for the most recent programming to download to their PC’s and PCs. Redesigns are consistently accessible in light of the fact that the makers of the different various kinds of programming are continually attempting to improve them to improve them. Having the most recent programming accessible is significant for business achievement reasons.
So where would you be able to locate the most recent programming for your PC? The response to that would be on the web. For the most part each sort of programming has their own genuine site that you can allude as well.
The most recent program regularly comes as updates to current programming that you may as of now have introduced onto your PC. At the point when you pursue the product a few sites will inquire as to whether you need to be advised of these updates or in the event that you need your program to be refreshed consequently once there is an update accessible.
Notwithstanding the product refreshes, there are likewise programming programs for your PC that are new and have never been utilized. The organizations that make them will for the most part declare the most recent programming programs a couple of months before they come to accessibility the whole way across the web. By and large you can peruse more about the most recent programming programs on gatherings or websites. You can find out about the highlights and what you can anticipate from the forthcoming programming programs.
Do I need to pay for these projects?
As a rule for special reasons and ubiquity, the product is for nothing out of pocket. Anyway there are a few projects that will cost you a charge due to a portion of the additional apparatuses that they incorporate which may be not quite the same as other programming programs that you find on the web. It isn’t difficult to go over the most recent programming programs in the event that you simply play out an inquiry on Google.
Is there an unconditional promise?
The greater part of the occasions, indeed, there is an unconditional promise on the vast majority of the product PC programs that you would need to pay a charge for. You would have to initially peruse the rules and arrangements of the organization that you intend to buy programming from. The organization needs you to be certain about purchasing their product projects and this is the reason they offer you the unconditional promise on them.
When downloading or introducing the most recent programming projects to your PC you need to ensure the projects are genuine, and that they are definitely not
PC writing computer programs is the way toward planning and composing PC programs. That is pretty direct, right?
At its generally fundamental, you can consider programming offering guidelines to a PC to accomplish something you need it to do – which may sound fundamentally the same as how you work your PC. Shortsightedly, the main distinction between what you are doing now as a PC client and what you may do as a software engineer is that the directions are spared some place so they can be utilized again and again. In actuality, in the event that you have utilized macros in a product program like a word processor or spreadsheet (or endless different applications that are large scale empowered) you have done PC programming of a sort.
Projects can be as basic as a lot of directions put away in a book record for doing some unremarkable assignment, such as making reinforcements of all the PC documents in an organizer, or as perplexing as something prefer a word processor, or the working framework that your PC utilizes which can require a huge number of lines of code. We have to comprehend that PCs, which are commonly bits of metal, plastic, silicon, and different materials remained together in a way that permits them to do some astounding things that seem like reasoning, can’t really think by any stretch of the imagination. However, what they can do incredibly well is adhere to directions. So what are these guidelines, in any case? At the level that a PC comprehends, these must be exact, exceptionally nitty gritty, and complete bit by bit headings, and they should be in a structure that the processor and different pieces of the PC can comprehend – and that is as meager electrical heartbeats which people aren’t fit for transmitting (in any event not right now).
As it were, you can think about a PC program like a formula: a lot of directions that can be followed to deliver an outcome. On account of a formula, the directions are utilized by a human and can in this way be somewhat spellbinding, forgetting about a portion of the subtleties. For instance, if a formula guidance is to “empty the combination into a blender and whip until foamy”, it is accepting that the human recognizes what a blender is, and where it is, and how to set it up, and how to utilize it – and furthermore what pour implies, and what foamy methods, etc. The human culinary expert is relied upon to fill in the holes. A PC can’t do this – it has no clue about what anything implies, aside from a couple of basic directions. So the manner in which we do this is to give the human an approach to compose guidelines that would then be able to be converted into something the PC can comprehend. The “best approach to compose guidelines” is known as a programming language.
What a programming language permits us to do is to compose directions for the PC in a pretty much comprehensible structure that would then be able to be converted into something the PC can work with. The intelligible guidelines are regularly called (you got it) – code! Each line of intelligible code converts into a huge number of definite PC directions. An extraordinary program (or set of projects) is utilized to do this interpretation – every scripting language has its own interpreters, which are called compilers or mediators. When the interpretation is done the outcome is put away in some structure, for example, a record or set of documents (or in PC memory now and again), and each time the product is run, the PC will adhere to the guidelines and (ideally) the program will do whatever it is that it should do.
In spite of the fact that it is frequently envisioned that you must be a virtuoso to have the option to compose valuable programming, nearly any individual who is PC keen and has an enthusiasm for turning into a force client can figure out how to program. Most programming is composed by normal individuals with particular information and aptitudes. Acing PC programming can be a deep rooted interest, however assembling enough information and ability to have the option to do helpful things isn’t far off for any individual who realizes how to utilize a PC and is happy to commit a brief period… or then again perhaps a great deal of time, yet – it isn’t far off.
In this article, we will introduce PC programing and find how it might be applied to order the manner in which your PC works. For the most part, PC amateurs aren’t worried in controlling the PC, new PC clients are usually worried in studying how everything functions. By the by they might be astonished to discover that PC programing expands PC information overall and it can help to diminish the dreadfulness and terrorizing related with utilizing another PC.
PC programing is making a progression of orders that empower the PC to do a few activities. The individuals who program PCs (called Computer Programmers) utilize a programing language to speak with a PC. You may have known about a portion of these dialects in the past, for example, Visual Basic, C++, or Fortran. There are several other programing language and neither one of the ones is best than the other. Pretty much every one of them are equipped for executing similar undertakings and achieving similar objectives. A programmer picks one language by a straightforward inclination.
Every one of these dialects vary by the manner in which they speak with a PC, the orders that they submit to are unmistakable. Not a solitary order of one language can be traded with the orders or language of another. In any case, every one of them can be utilized to control a PC.
At present it is difficult to show you how to program any language in a solitary article or exercise. Yet, we can even now acquaint you with a portion of programing’s most essential ideas – beginning with the orders. Orders are the directions that a PC adjusts to play out an activity. To make them work within a program, programers dole out orders to objects like fastens for instance.
The orders in a program are pretty useless except if they have some information to seek after so programers either give the projects some data to work with (rundown of names or numbers for instance) or they cause the program to produce it’s own information. Sporadically, the information originates from an external source like the Internet or the PC that the program lives. The information that a program gets is considered info and information that the program produces is called yield.
Different occasions, the information is obscure. On the off chance that the program were working with a basic polynomial math condition like, “x + 5 = y,” the factors “x” and “y” would be unidentified bits of information. Or then again if a program were to compute a date “x” days from now, the variable “x” would be a unidentified bit of information until we mention to the program what “x” is. In writing computer programs, it’s occasionally needed to work with unidentified bits of information.
That is when conditions are convenient, conditions permit a program to execute an activity dependent on the function of a past order. Utilizing this sort of order, we could educate a program to do a certain something if the “x” variable in our last model ended up being 9 days, and afterward do distinctive thing if the variable ended up being 31 days.
Orders, information, factors, and conditions help construct the most straightforward projects and there are absolutely more segments of any programming language. However, when they’re composed into a programing language and assembled to make an executable record (a document finishing with the .exe expansion), they transform into a product application.
As we referenced before, you can utilize a programing language to control your PC. By utilizing straightforward orders, you can program your PC to perform numerical assignments, round out web structures, create an email message and send it off, or quite a few different things. In case you’re intrigued, you may discover Visual Basic one of the most simplest PC programing dialects to learn. Visual Basic is an item arranged programing language and it consequently codes a very remarkable program the moment a developer hauls a catch onto a screen.
Amusement is presently getting its due in the advanced world, with the administration Gurus and Doctors endorsing it as a piece of life for being peaceful and sound, notwithstanding getting more beneficial. It would not be a long way from reality that entertainment was given significance even in the beginning of our development. It ought to be perceived that consistently ‘wellbeing’ is ‘abundance’ and for keeping up sound wellbeing psyche and body, ‘diversion’ is an absolute necessity.
Amusement basically implies utilization of your time either in inventive, or relaxation or sports exercises, where the soul of support is more than the outcome, so the whole cycle turns out to be useful for the brain and the body. The other perspective on is as the cycle of diversion is change of the ‘recreation time’, into a more ‘profitable’ way. With the progression and modernization of the general public, the requirement for ‘diversion’ has become a significant one which can’t be dismissed. The social headways, and everything opening up on the snap of a catch, have lead to a way of life which is inactive and apathetic.
These apathetic and stationary lifestyles styles, are prompting way of life situated medical conditions, for example, Blood pressure, stoutness diabetes to give some examples, and it is here that appropriate ‘diversion’ does ponders! However, one ought not try too hard, and ought to be inside one’s own ‘need’ and ‘limit’. Abundance of diversion prompts an unrestrained lifestyle and is better stayed away from. ‘Amusement backs out the mounting weights and pressures which creep into our internal identity in this advanced method of living. Legitimate use of ‘amusement’ expands the ‘nature’ of life. Professionals of stress the executives give ‘entertainment’ extraordinary significance. There are numerous roads for diversion, as regardless games, sports, strolling, planting and so on ! Holidaying is a type of entertainment, which has gotten the extravagant of numerous in these cutting edge days. The decision of diversion must be as per the individual monetary, mental and physical limits. What checks at last is that if you are having adequate entertainment and the strategy for amusement is altogether relying on your will and decision.
Off the countless advantages of amusement like improved efficiency, sound wellbeing, great way of life what takes the cake is achievement. In this manner it is basic that one picks his sort of recreational action and hurls himself to accomplishing those objectives which were far off
This paper gives a modest contribution to the issue of computer programs copyright and its protection under South African law. It uses as a case study the decision of the Supreme Court of Appeal in Haupt T/A Soft Copy v Brewers Marketing Intelligence (Pty) Ltd and Others 2006 (4) SA 458 (SCA) (the Haupt’s case). What is the implication of this decision for South Africa in terms of copyright protection? Is South African copyright protection of software too soft? What consequences this decision can entail as far as software industry is concerned in South Africa? Can it scare off potential investors?
Here are some of the issues the paper is looking at. The paper is divided into three sections. The first section will give a brief view of the case, the second will deal with the concept and regulation of copyrights, finally the third will address the discussion of the case. The paper will end up with a conclusion.
1. FACTS OF THE CASE
Haupt, the appellant, applied to the Cape High Court for an order interdicting the respondents in terms of the Copyright Act of 1978 from infringing his alleged copyright in some computer programs. The High Court held that Haupt’s claim could not be sustained and dismissed the application. The decision of the Cape High Court was reversed by the Supreme Court of Appeal which set an order interdicting the respondents from infringing the appellant’s copyright in the computer programs.
2. ISSUE OF COPYRIGHTS
2.1 Concept of Copyrights
2.1.1 Definition
Copyrights are referred to as rights to ensure protection of information from duplication and distribution. They are a subset of intellectual property rights that aim to create a balance between the rights of an individual against those of the public by conferring the author or creator of a work the exclusive right to control and profit of his work.
2.1.2 Infringement of Copyright
The most relevant infringing activities to computer programs involve “copying”, “adapting” and publicly distributing the work. In each case the activity can be in relation to the whole of the work or a substantial part of it.
2.2 Regulation
Before dealing with the regulation of computer programs copyright in South Africa, regard must be had to the way this question has been addressed in other jurisdictions and internationally, since this matter has a high international scope.
2.2.1 World Intellectual Property Organization (WIPO)
Computer programs are protected as literary works within the meaning of article 2 of the Berne Convention. Such protection applies to computer programs, whatever may be the mode or the form of their expression (article 4).
The Berne Convention provides that copyright vests in the author of a work (article3).
As illustrated below the approach taken by the WIPO is the general position throughout the world.
2.2.2 Australia
In terms of section 10(1) the Australian Copyright Act of 1968, computer programs are protected as literary works.
2.2.3 United Kingdom
Like in Australia, “literary work” has been extended in the UK Copyright (Computer Programs) Regulations 1992 to include preparatory design material for a computer program.
2.2.4 The European Union
The EU Directive 91/250/EEC of 14 May 1991 on the legal protection of computer programs requires that computer programs and associated design materials be protected under copyright as literary works within the sense of the Berne Convention.
2.2.5 Japan
Japan is one of the rare industrialized countries where computer programs are not protected as literary works. The Japanese Copyright Act 48 of 1970 under articles 21 and 27 grants the author of a computer program the exclusive right to reproduce and adapt his work.
2.2.6 South Africa
Copyrights are regulated in South Africa by the Copyright Act 98 of 1978. This Act provides copyright protection for a wide variety of works, such as literary works, musical works, artistic works, computer programs, etc. and states as a general rule that copyright vests in the person who creates the relevant work. Nevertheless since the amendment of 1992, computer programs gained a special status in terms of which the copyright vests in the person who exercised control over the making of the computer program, rather than the programmer who created the work.
Now that the legal framework of copyright has been set, we can discuss the decision of the Haupt’s case accordingly.
3 DISCUSSION OF THE HAUPT’S CASE
3.1 Establishment of the infringement
As pointed out above this is a case of an alleged infringement of copyright in computer programs.
First, for infringement of copyright to be established, it is submitted that a plaintiff must satisfy two tests:
– a causal connection between the alleged infringement and the copyright work;
– there must be objective similarity
In the case at issue, the infringement is clearly established since these two tests are satisfied, indeed there is a causal connection between the copyright work and the infringement because some portions of the work have been copied, creating therefore an objective similarity.
Nevertheless, the question that can come to one’s mind is how come the program was created by the first respondent and it is the appellant who is considered as the author while there was no employment contract. It is simply because according to the Copyright Amendment Act of 1992, the copyright of computer programs vests not in the programmer who created the program but in the person who exercised the control over the making of the program, which is here the appellant.
No doubt that this decision is consistent with the Copyright Act. But is the approach taken by the Act the most suitable for the protection of copyrights in South Africa?
3.2 Suitability of computer programs copyright protection in South Africa
As noted above, South Africa has taken a position utterly different from most of foreign jurisdictions and the WIPO as well in the issue of computer programs copyright. Indeed, since 1992 computer programs are no longer protected as literary works with the implication that the copyright in the former programs has shifted from the creator of the work to the person exercising control over the making of the program.
What is the rationale of this approach when one knows that copyright is a legal means to encourage and protect human creativity and innovation?
It seems to me a peculiar position, since it takes away all the rationale of copyrights. Roos (“Rabble Rousing for Cyber Heads: Development in South Africa’s IP law and international investment concerns” (No 82/2006), CIPS), on the other hand, contends that the fact that the copyright is shifted from the real creator to the person who exercises control over the making of the program does not really matter since the copyright still exists.
I definitely do not share this position, my personal opinion is that: to award copyright to the wrong person is nothing else that negation of copyright.
But where I agree with Roos is when he states that this decision will not scare off potential investors, since the investors have after all a coinciding interest with the party in which favour the court found.
So, as far as I am concerned, what I can say is that the rationale followed by the legislature in passing the Copyright Amendment Act of 1992 is more economic than copyright oriented. Indeed it strengthens the position of parties already strong by giving them more power and does not really protect nor encourage human creativity by defending the works of the mind.
Is this difference between South Africa and other jurisdictions and international bodies merely superficial?
3.3 South African approach contra international approach
As mentioned by Roos, the mere difference between the South African and the international handling of a computer program should not be confused with the prospect of less protection. Nevertheless does not the difference in this instance amount to discrepancy?
Roos contends that there is no discrepancy since South Africa protects the copyright in computer programs. He contends that the difference is merely superficial.
I do not agree with Roos on this point, I am of the view that the difference is substantial. Indeed, as we have seen in the second section, the WCT protects computer programs as literary works while South Africa protects computer programs as a category of its own. The copyright vests in the creator of the work in terms of the WCT while in South Africa, the copyright vests in the person exercising control over the making of the computer program. That makes all the difference, which definitely amounts to discrepancy.
How can programmers protect themselves against the flaws of the legislation?
3.4 Contractual clauses
It is fortunate that programmers have still a way to protect their copyrights in the computer programs they are creating through contractual clauses stipulating that the copyright vests in them. Indeed, as submitted by Roos, “most programmers with an interest in retaining the copyright should reasonably negotiate that the copyright vests in them”. But are programmers really in a position to negotiate any copyright clause favouring them with parties far more powerful than they are? Therefore the efficiency of these clauses in protecting the programmers’ rights is still to be seen.