I've immersed myself in programming with the easiest language to learn, and I'm currently trying to make my own command line utility for training the agents in The Companions Project. Sure, I may know jack squat about how to implement machine learning on the scale I wish to happen, but I do know one vital aspect of it: Python.
Python compared to Java is the equivalent of Chinese checkers to chess. Chinese checkers is incredibly easy to learn but understandably difficult to master. Chess has a higher barrier to entry, but once you're over the wall, one can has some very complex possibilities to learn. While I now see programming in Python is incredibly simpler to begin, my Java-minded self took a quick look at the syntax and only bothered to look at code snippets to scare me into believing that Python is the language of the devil with forced indentation and syntax like this:
class HelloWorld:
def hello(self, name=None):
if name is None:
print('Your name is now Daniel')
name = self.get_default_name()
response = 'Hello {name}'.format(name=name)'
print(response)
def get_default_name(self):
return 'Daniel Brooks
(Yes, I know this is code is verbose and I could have just wrote
name='Daniel Brooks'
, but I wrote that for sake of argument.)
I always took a step back from Python every time I saw a code snippet (particularly the ones orders of magnitude larger than this), but now that I recognize Python is the enterprise standard for machine learning, I have the strong desire to learn the language and bend it to my will. My hesitance has turned to curiosity, and I am desperately playing catch-up with all the computer science students that learn this first year. Although, I'm still in high school, so I shouldn't be worrying about that. I'm just excited I'm already proficient in two widely used programming languages. (Yes, I can say I'm proficient in Python because I think two two months is enough to learn the beautiful language designed by Guido.)
Just so we're clear, I'm not learning C or its derivatives until at least senior year of high school. I'm honestly not sure if I'll actually need to get truly in-depth to C(++), so, I'll save learning bits of C(++) for when I need it, like when writing code for Android's NDK for machine learning on Android devices. Hopefully, a stable TensorFlow Java module is released and I can avoid that, but I'll be slowly inching towards a scalable backend with App Engine on the Google Cloud Platform.
Comments
Post a Comment