MrValdez's Blog

Fighting EX Fighting Layer from the perspective of an Street Fighter EX noob

Posted on July 12, 2018

I didn't play Street Fighter EX when it first came out. I grew up in the province and have limited arcade selections. It doesn't help that I rather play Xmen vs Street Fighter, Marvel Super Heroes, or Metal Slug (going for the 1CC) whenever I'm at our local arcade.

After moving to Metro Manila, I hang out with friends to play Fighting Games at our weekly casuals. A new game was released: EX Fighting Layer, and we got to play it on day 1. I immediately told everyone that I have no experience with the series and ...

[read more]
Categories: Games

Reasons to use Python

Posted on May 12, 2018

I'm a polyglot computer programmer. I am proficient with C, C++, Visual Basic 6.0, C#, PHP, and Python. I have basic knowledge with Java, Go, and Pawn[1], but I am very confident I can code with these if I have the manual available.

I personally like Python the most. In this post, I'll point out the advantage of using Python.

Miss Kobayashi's Maid Dragon is an anime where the main character is surprisingly not a teenager but a young adult who have a job as a programmer. Her using Python is just a nice bonus ...

[read more]
Categories: Programming, Python

My anecdotes on why I think Python should be a beginner's first programming language

Posted on May 8, 2018

Disclaimer: I'm primarily a Python programmer, a board member of Python Philippines, and used Python before it became popular (I don't remember the exact version, but I encountered the language when it was introduced in Blender).

I started programming with Pascal, honed my skills on C and C++, and made commercial products with Visual Basic 6.0, PHP and Python.

Python is the programming language that I found the most fun to work with [1]. Over the years, I've written a lot of code. Based on pure experience, I can see the programming foundation a beginner will ...

[read more]
Categories: Essays, Personal, Python, Teaching

My choice of Programming IDE: Notepad2

Posted on May 6, 2018

I've been programming since I was a kid. I've experienced saving my code in numerous ways: using the blue IDEs (Turbo C), "copy con <filename>", visual studio (Visual Basic and C++), emacs, vi, and notepad2.

For the last 7+ years, I've been using notepad2 almost exclusively for Python programming. There is a method to my madness.

Before I started teaching programming to college students, I was an emacs user. The idea of having an IDE that you can program appeals to me. I like the idea of an IDE that is custom made to my own intuition ...

[read more]
Categories: Programming

Projects for Python beginners

Posted on May 5, 2018

(updated May 6, 2018)

After going over some beginner-level programming projects, its time to level up and evolve out of being a beginner. Its time to take you out of your comfort zone and become a Python programmer [1].

These Python projects are selected with the following in mind:

  • You can use the skills you've learned from these projects as a foundation for other projects.
  • You will learn the basics of a specific IT subject. If you are going to college, you can use these as your basis.
  • These projects can help show potential clients/employers that they should ...
[read more]
Categories: Programming, Python

Projects for Programming Beginners

Posted on May 4, 2018

As a teacher, beginners often ask me these project-related questions:

  • I've just learned the syntax of this new programming language. What do I do next?
  • I want to be a programmer. What software should I make next?
  • I am applying for a job. What projects should I build to get hired?
  • I want to be the very best. Like no one ever was. Tell me what to make.

Learning a new skill is relatively easy. You just need to study the basics, the mechanics, the terminologies, and your stance while doing that skill (think of a stance like the ...

[read more]
Categories: Programming, Python

Programming learning tip: Stop copy-pasting

Posted on May 3, 2018

When I am learning a new library or programming language, I don't copy-paste. I type the code snippet manually.

In order of importance, the benefits of typing code are:

  • You are actively thinking what you are typing. You are unconsciously learning the code as you read the text.
  • You get extra time thinking how the copied code fits in your existing code.
  • You get typing practice

I strongly believe that copy-pasting inhibits learning, that when I teach programming, I intentionally write on the whiteboard to force the students to type.

If I have an extra monitor, I would move ...

[read more]
Categories: Programming, Teaching

What makes a great student? They don't need to be spoon-fed

Posted on May 2, 2018

I've been a teacher of computer programming for a while now. I've taught people on how to code and how to think like a programmer. Over the years, I've noticed students who would become leaders in their field.

There are a lot of ways a student can learn from a teacher. These are my essays on the subject.

Motivated students don't wait for instructions

For an average teacher, it would be great if the students listen intently to everything you say and do what you tell them to. This is fine for an average student, but ...

[read more]
Categories: Essays, Teaching

What makes a great teacher? They can teach a complicated subject and make it accessible to other people

Posted on May 1, 2018

I've been a teacher of computer programming for a while now. I've taught people on how to code and how to think like a programmer. Over the years, I've been developing strategies and philosophies on teaching. I've decided to put them in writing.

There are a lot of ways to become a great teacher. These are my essays on the subject.

Matt Striker is a teacher who wrestles. ...or is he a wrestler who teaches?

Great teachers can teach the fundamentals of a complicated subject

The first step in simplifying a hard topic is to first ...

[read more]
Categories: Essays, Teaching

My suggested Hello World for introducing programming to non-programmers

Posted on April 1, 2018

In accordance with the ancient traditions of our people, we must first build an app that does nothing except say "Hello world".

-- React Native's tutorial

"Hello world" is very useful as an introduction to a library or a programming language. The reasons for this are:

  • Almost all programs need to output to screen.
  • It tests that the library or programming language is working. (this simple test is called a black triangle)
  • By focusing on one thing, you can have a simple understand of how the code is written, what tools are needed to execute, and satisfaction that you've ...
[read more]
Categories: Programming