Back arrow Home Right Arrow Email me! Help

eOghaNEDUCATION

Created on 27-02-01

"Education" from the Latin verb 'educere - to draw out'

This section of my website will keep an account of my attempts at scaling the ranks of Hackerdom. After reading the "How to be a Hacker" guide, I've decided to try and concentrate on learning the actual programming languages and 'thinking processes' involved in solving problems.

I will base my learning around solving the problems provided by ACM. I will start by trying to replicate the sample solutions provided in Python. I will try and avoid learning the code 'by heart' and concentrate on understanding the object oriented approach to solving the problems, and try to identify differences in the 3 languages (probably just concentrate on Python + Java for the time being). Then possibly attempt solutions to the same problem in Java and eventually C++ (as recommended in the Hacker Howto).

Problems to be attempted in the near future will be:

I like these text-processing problems as opposed to mathematical ones - though I will progress to them later.

Self Assignment - Set on 28/02/01

Work through the first 2 Palindrome problems until the code involved is understood. Using these for reference materials:

  1. attempt to solve the last Palinwords problem in Python.
  2. attempt to reproduce all 3 solutions in Java.

I suppose I should create a table to keep a record of my progress eg:

Problem Number Problem Title Python Solution Java Solution
1 Pesky Palindromes Provided... TBD
2 Palindromes Provided... TBD
3 Palinwords !DONE!* TBD

*I produced an adequate (in my opinion anyway!) solution in about an hour. And half of that was spent chewing on a pizza in my flat while reading other code (Gregor LINGL's solution to Problem #353). For a while I felt guilty about stealing someone elses code, but then I thought "Well, is that not the point of 'Object Orientation' and 'Code Reuse' etc?". And anyway I didn't use it byte-for-byte, I had to make a few changes... Could someone please email me the proper etiquette for this kind of thing as I don't want to be accused of plagiarising someones code in later life!

I have to say I'm feeling quite chuffed with myself at the minute. It is now March 1st (12.16am - and I'm in the office!) and I am officially halfway through my Placement. Arguably this is the first *real* code I've produced in my time here. Hopefully it will be the first program of many...