Over a million developers have joined DZone.

Coding Exercise Introduction

DZone's Guide to

Coding Exercise Introduction

· Java Zone
Free Resource

Build vs Buy a Data Quality Solution: Which is Best for You? Gain insights on a hybrid approach. Download white paper now!

As part of my job, I do a lot of architectural designing, OOD, clean code, TDD and everything that is within my power to have great code and be a professional craftsman.

However, I don’t get to see many problems such as tree traversal, BFS, DFS, lists manipulation etc.

I name these kinds of problems as CS1 and CS2 courses problems (intro to CS , intro to data-structure and algorithms).

I also don‘t have the opportunity to learn new programming languages. We‘re writing in Java and there is no reason at the office to start learning a new language. At least not for business purposes. At least not now.

But as a professional developer, I want to constantly exercise, sharpen, and improve my skills.
So I started a small project:

  1. Do some basic coding that I usually don't do (as I described above, the CS1, CS2 coding exercises)
  2. Learn a new language
As for task #1, I already wrote some Java code to problems I thought of, and will try to add more during the weeks to come.

As for task #2, I decides to start learning Ruby. Why Ruby? No particular reason. It’s different from Java and good in the market.
Once I get comfortable with Ruby, my plan is to do the same problems in Ruby.
I’ve uploaded the initial code to bitbucket, which is Git hosting by Atlassian. Why not Github? Well, I wanted to get familiar with a different Git hosting then I already know.
Some of the code has nice written tests, and some, sadly to say, I just played around, it is not REALLY, AUTOMATICALLY testes. This is something that must be fixed as well.
These are the problems I already written:
  • Factorial
  • Fibonacci
  • Reverse a list
  • Anagram
  • Palindrome
  • BFS tree traverse

Here's the repository location:


Build vs Buy a Data Quality Solution: Which is Best for You? Maintaining high quality data is essential for operational efficiency, meaningful analytics and good long-term customer relationships. But, when dealing with multiple sources of data, data quality becomes complex, so you need to know when you should build a custom data quality tools effort over canned solutions. Download our whitepaper for more insights into a hybrid approach.


Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}