20240618 How To Become a Self-Taught Programmer.pptx

sl51926 25 views 10 slides Jul 01, 2024
Slide 1
Slide 1 of 10
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10

About This Presentation

Updated presentation, on how to be a self-taught programmer, with details of a recent ongoing project.


Slide Content

How To Become a Self-Taught Programmer Author: Sharon Liu, Created: 03/07/2015-01/07/2024. Purpose: Audience Education (means some of it has been tried and tested). Backend process design User interface design

Contribution to programming You should ask not what programming can do for you, but what you can do for programming. A contribution should be original, functional, easy to use, and aesthetic. See what commercial products are out there, and build on their ideas, whether it is for a specific outlet e.g. app store, or what market you are targeting e.g. what existing users of software would also want to use. Learn from both large and small businesses. The large business, for aspirational purposes, and small businesses, for ways to start without much capital.

Use Google for code examples Many times, you will be asked to code something you have never done before. It is advisable to search Google for an example of the code, to see if somebody has already done it, or partially done it. For example, if you are asked to create a video that fills the entire webpage, you can search for “ full window video html5 tutorial”. In this case, the tutorial gives us exactly what we want. However, if no direct example is available, you can: Resort to the manual for the language you are using. See if the code is available in a different language. See if there is a more general example. And other solutions.

Multidisciplinary projects A multidisciplinary project is one which brings together knowledge and skills from multiple disciplines. Within computer science, there are multiple sub-fields, e.g. algorithms, artificial intelligence. So a project can span several sub-fields. However, there are also other fields within science. A bionic arm may use biology and computing. A computing business venture combines both the arts and the sciences. Traditionally, multidisciplinary projects are done with multiple specialists collaborating together, each working on their own part of the project. But a single person may also draw on multiple disciplines for their own projects.

Communication It is necessary to tell others about your projects. It helps keep you motivated. Sometimes, other people can give you a different perspective, which changes your actions dramatically, as they can find flaws you didn’t see. It is beneficial for others to experience the quality of your work. Don’t be afraid that your ideas will be stolen. There is always somebody brighter than you, who knew about it anyway.

Passing tests You can take online tests which prove your ability. It is possible to take a test without revising, if you have been using the knowledge on and off for a number of years. If you need to pass a test which you have little prior knowledge: Search for free books and tutorials on the subject. Bookmark one page, when you have finished reading it. One page should not take you very long. Bookmark the home page for the book, and go through all the links. Depending on the subject, it may take you a few months to learn it.

Use the right tools You will need a reasonably up-to-date computer. Learn to use compilers in the language(s) of your choice. It helps if you know how to touch type. Read and contribute to open source software. This will greatly reduce the budget required in becoming a programmer. Learn at least one language thoroughly, to give yourself an idea of what programming is capable of. It helps if you know about another field that programming can contribute to, e.g. mathematical programming. Watch programming videos.

Broaden abilities using a portfolio A portfolio helps you to get a foot in the door. Every portfolio piece should demonstrate a different, new programming skill. If you are on autopilot whilst creating your portfolio, it is unlikely to excite the hiring manager. It is ideal to use programming to create a piece of work which has never been done before. Keep your portfolio up-to-date with the newest technologies. A portfolio is considered to be stronger than a test result, as your own creativity goes into your portfolio, and it is a more direct example of what you can do. A portfolio on the web is easily accessible to those who are interested.

Recent Project: Python to JavaScript Interpreter. (Rudimentary.) I used regular expressions, and if statements, to convert Python code, to JavaScript code. The split method, was used to split Python code into separate strings, according to the line breaks.  To date, the interpreter understands variables, be they strings or numbers, the greater than or less than sign, and the increment and decrement operations. I would need to make the interpreter understand other blocks of python code. I would need to write a parser, as the eval function only outputs to the console.

Designing an operating system. An operating system, is just a set of icons, within a screen. You could build an virtual operating system, in JavaScript, or Inform7. To build a native operating system, you need to make the hardware. You would need a screen (made of foil), hard disk (made of copper leaf extract), and Random Access Memory (made of plastic foil transistors). Minerals can be collected from the environment, by growing plants on a farm, with a certain soil composition. The new extraction of minerals, pollutes the environment, so the biological concentration of minerals, is all-important in protecting the ability of the environment, to sustain life.