30 January 2013

Improving your Programming

Recently I (literally) stumbled upon a website called CodeSchool.
CodeSchool is a place to learn and practise basics of a few programming languages and frameworks (most of them web related). They use an interesting way to teach, first they tell you to watch a video, that explains the theory of a lesson and after that you have to complete a few basic hands on challenges. I took the opportunity and did their Try Git course. A few hours after completing this course I was offered to try the premium courses for 48 hours. So I did two courses about HTML5 and CSS3 which where a good for refreshing my knowledge in this area.
I liked their form of teaching, while it isn't a supplement for real practise, it still helped me remember things allot more. There is just a huge difference between hearing about the syntax of a command and having to look it up because you need it for something.
If you are interested in learning things like R, Git, Ruby, jQuery or Node.js, give CodeSchool a try. To see the coursed I completed you can check my score card.

Another thing I recently found was Project Euler. While learning programming I always felt a lack of real challenges in programming. Most things we did in school weren’t about coming up with creative solutions for a problem, but mostly just very straight forward stuff (program a command line calculator). Project Euler is a collection of interesting problems to improve problem solving and algorithm design skills. It can also be very useful in practising a new programming language. I solved the first few problems with the use of python and tried to learn it that way.
If you seek a challenge in programming I would really recommend Project Euler to you!

At the time of this post I have solved 20 problems. Below you can see my current counter.

05 March 2012

Robocode - Learning Java made Entertaining

I know, that learning programming can be very frustrating for many people. I remember in my technical high school, we had many students struggling with learning programming above a certain level.
Very often this happens for two reasons:
  1. It becomes very repetitive and doesn't allow you to be creative
  2.  It is hard to find a new challenge
Robocode tries to solve these two problems.
Robocode is a programming game, where the goal is to develop a robot battle tank to battle against other tanks in Java or .NET. The robot battles are running in real-time and on-screen.
So you try to program a logic for your robot, to destroy the enemy robot(s).  Sounds like every little boys dream, doesn't it? The start is very easy and you have a huge resource on bots you can fight against, which requires to advance and refine your strategies more and more.

In Robocode you can mainly do four things:
  1. Turn and move your Robot
  2. Turn your gun
  3. Turn your radar
  4. Shoot

04 March 2012

Fast Java Libraries

I am very interested in performance, so I always try to improve the performance of my Java applications, so I found a few libraries, that make a some things allot faster.

I have made a dedicated page where I list all of them, you can find it here: Fast Java Libraries

I plan to make small tutorial on all of them, so be sure to check here again.

My new Blog

Hi, my name is Tobi and I'm interested in technology, so I made this blog =)
I most like will talk allot about Java programming, machine learning, open source, browsers and all other technical things I encounter.
My old blog is located at tobijdc.wordpress.com, but it doesn't have much content.