Programming

Coding Prerequisites

Before coding, I have learned that it helps to plan everything out, set goals, and limits. Two things that any coder can do that will help them in the future would be to create pseudo code, and screenshots. Pseudo code is lists of actions and calculations you want your program to take from start to end. This is useful, as a coder can then focus on making said action work, instead of deciding what they want the program to do while coding. A second tool coders can use to their advantage would be screenshots. These are rough sketches of how you want your program to look to the user, mostly pertaining to the GUI. Similar to the last, this will help the programmer focus on making said look possible, rather than pondering over the look itself. Personally, I relate Pseudo code to checklists, as my work is not done until every task is accounted for. Similar to pseudo code, a programmer’s job isn’t done until the program has all the necessary functions that the client demands.

IDE (Integrated Development Environment)

Any coding project requires a primary IDE for coding. During my time in C++, I used the online IDE known as IdeONE which suited well for small c++ applications. However, as I switched over to Python, I used PyScripter.
PyScripter is an IDE that supports graphics, and the utilization of system modules (e.g. Time). With PyScripter, we could create windows that had text and images, and that could be interacted through various means, such as keyboard and mouse.
The PyScripter interface is very clean, and supports many different modules, such as PyGame.
In addition, we used WindRiver for C++ Programming of the FRC bot. However, as of 2015, we must now build and deploy through Eclipse into the new RoboRIO.

Coding in TURING Language

Turing is an old programming language named after Alan Turing, and based on simple everyday context (e.g. put to display text). This program is mainly used for learning purposes. Turing supports basic graphic manipulation of their program when run by a user. What is nice about the Turing language is that it is very basic and simple to use, such as building a box with Lego bricks. The help reference in Turing can turn novices into Turing experts through eventual experimentation and programming.
I have personally found Turing to be quite fun to use, on the account that it has been my first time using said language. In my opinion however, it would be interesting if students learned programming with an actual and more developed language, such as C++ or Java. This would get students better prepared for their future ahead if they wish to go into programming as a career.

turing

Interfacing Hardware with Code

Interfacing Hardware allows for the interaction between software, and external hardware. This is significant to programmers, as it ensures that a produced software can function on a multiple of platforms in multiple of environments. It’s also significant that the piece of interfaced hardware can function and complete its task successfully. In combination with Turing, I managed to interface an LED display with my Turing Networking Quiz.
I find interfacing to be a very interesting topic, and would definitely dwell further into it. It is because of interfacing that many tasks and devices are possible, such as automation of factories, vehicles, and most of all, computers.

IT Networking & Systems Administration Assessment Application

As per our final assessment, we had to create an application that acted as an assessment for a topic that corresponds to your career. As such, mine was based off of IT Networking and System Administration.
The application was coded in Python and thoroughly documented every step of the way.
The application has a tutorial section that briefly debriefs the user on a few facts and relevant information about IT Networking & Systems Administration.
The application has an assessment section that will test the users’ knowledge on the topic at hand, delivering their score at the end, as well as a document containing their results.
Roughly 10 hours, give or take, have went into this project.

itnasa
This application focused mainly on using the constructs provided as part of the PyGame python module. PyGame is a module that is meant to be used for creating 2D games, as well as other forms of interactive animation.
I have managed to use PyGame to create a GUI that a user can navigate through, as well as a clean content-oriented tutorial and assessment area.
You can give my application a try by downloading the following archive and extracting it to a location in your computer.

C++ Programming

When I think about programming, I only see it as a fun little hobby and nothing more. For instance, I coded this entire site not because it was a school project, but because I had some extra time, and thought it would be fun to dwell into HTML5.

I originally begin learning C++ during my grade 7-8 year, but abandoned it due to a lack of reasons to use it. However, with my grade 11 Robotics course, and FRC around the corner, I began to further hone my C++ skills.
C++ is more commonly known as a middle-level programming language, able to both be programmed at a high-level (human-like syntaxes), and some low-level (processor language). C++ has an uncountable number of possible realistic applications, and is used and seen about everywhere in the software design industry.
However, I mainly see it when it comes to FIRST FRC. Even though I don’t primarily program for our team, I do know a bit regarding programing the cRIO, as well as a bit regarding WPILib and programming individual components. For instance, here’s some code that was whipped together to control pneumatics.

eclipse

Python

Python is a new and very flexible programming language that is being used for many instances, such as web development and small applications.
Python includes many syntaxes that are new and useful; for instance, a syntax that can iterate through a list. The Python language is very simple to learn and grasp right off the start, as I have managed to grasp the basics within the span of 2 weeks from independent courses on CodeCademy.
The only thing that I dislike about Python would be whitespacing. In C++, code segments are often enclosed by brackets ( { and } ). However, in Python, code needs to be manually spaced/indented, otherwise it would be considered out of that nested segment.

python