Sunday, November 09, 2008

JavaInsights 101

Description:

This learning track is for developers who have completed at least one course in Core Java (or are familiar with basic principles of Java, like Syntax, compiling, and running Java programs) and would like to improve their understanding of the Java language and ecosystem.

Why Is This Track Needed?:

A typical Core Java course focuses on the Java syntax and simple exercises to understand Java. These are an important first step, however, usually due to lack of time such a course cannot equip the learner with deeper knowledge of how to develop good software in the Java ecosystem. The Java landscape is very huge and cannot be dealt with in a single course. When dealing with such magnitude, the best way to learn is self learn. This track's focus is to help developers by providing guidance as they get their feet wet, and give them the initial momentum for continuous self learning. The track will provide developers with:
  1. An understanding of coding and design best practices
  2. An exposure to the Java ecosystem of open source libraries and frameworks
  3. An understanding of how to unit test Java code
  4. An understanding of source control systems and how to use them
  5. An understanding of how to use development and code analysis tools
  6. A deeper understanding of some of the topics already learned in a regular Core Java course
Learning Methodology:

For this track we will use the concept of networked collaborative learning. Breifly, this means that everyone is a learner and a mentor. Learning happens by understanding, practicing, and participating. New media technologies (such as blogs, and podcasts) will be used for participation.

The JavaInsights101 track consists of 16 tasks. I recommend that you try and complete them in 16 weeks. Each task is explained in a separate blog post. After completing a task, please write a blog post (describing your solution, problems faced if any, and how you overcame them) on your own blog and leave a comment on the post describing the task (on this blog). Be sure that your comment contains the URL of your post describing your solution for the task.

Participants are encouraged to write blog posts regularly as well as read posts of other participants and leave (constructive) comments on their blogs.

There is a supporting Google Group for this track, which can be used for asking questions, and other discussions related to the track. Participants are also encouraged to go beyond this Google Group and ask questions on public Java forums, such as Java Ranch and Java.net . Participating on these forums will give you a wider perspective and will also help you connect with the Java developer community. For the benefit of other participants, whenever you ask a question on another forum, either write a blog post with the URL of the question, or write a quick mail on the mailing list, describing your question and it's URL. This will help other participants who have similar questions. Moreover if someone already knows the answer, they can post it on the question thread.

Registration:

To register for this track leave a comment on this post with your blog URL and go to Task 1. If you do not already have a blog, do Task1 first and then leave a comment on this post.

Fees:

This is a pay-it-forward course, which means you do not have to pay any fees monetarily. However, you are strongly urged to volunteer after completing this track by helping new participants, by either answering their questions on the forum, or by reviewing their code.

Frequently Asked Questions

Learning Tasks:
  1. Create a blog
  2. Create a working environment for Java
  3. Hello World
  4. Task: Check-in code into a source control system
  5. Refactor HelloWorld to use JSAP
  6. First Steps Into Test Driven Development
  7. An exercise with Collections
  8. An exercise with Threads
  9. An exercise with Swing
  10. Unit testing the Swing GUI
  11. Unit test code coverage
  12. Using Log4J for logging
  13. Code review
  14. Using ANT for compiling your project
  15. Ensuring code quality with FindBugs
  16. Your journey begins now

25 comments:

Freeman said...

Awesome, thanks for doing this Parag. I'm looking forward to brushing up on my Java too :)
freeman : http://wheresfreeman.blogspot.com

Parag said...

Hi Freeman,

Welcome to JavaInsights 101 :-) I now have my first participant...

subbu said...

hi.
thanx for initiating event like this. I m looking to have my hand in Adavanced java..thanx again

subbu : http://gndujavatechnocrats.blogspot.com

Megha said...

hello..
thanks for taking this initiative.

i'mpossible

tanu said...

nic 1 i hav to see wat type of trainig i wll get from here

tanu :http://tanu1788.blogspot.com

Parag said...

@Megha
@Tanu

Nice to have you both in the course. I also suggest that you use your blog as a learning journal for the work you do on the tasks.

Feel free to ask questions here as well as on the newsgroup (link provided in this post).

ved said...

Thanks dude !

Nice Work

My blog: vedforu.blogspot.com

rajdgreat007 said...

its a nice start....
my blog..
http://rajdgreat007.blogspot.com/

EC said...

Hi Parag,

This blog is an excellent idea! I am a beginning Java student, taking an online class through a junior college. I will be visiting your site often.

thanks!

junaid said...

Hi
interested in this course and also want to teach java to students

mine is learneverywhere.wordpress.com

thanks
junaid
junaidp@gmail.com

Parag said...

Hey Junaid, you have a nice website. I am planning to host this course on diycomputerscience.com very soon.

Kashish Durgiya said...

Hi Parag,

Thanks for creating and starting this course, I like the look of this, will go through the course and I think surely I'd love it.

--
Regards,
Kashish.(Blogging @ http://kashishd19.blogspot.com/)

Parag said...

I am glad you liked the course Kashish. You may also want to take a look at diycomputerscience.com, where I have several other courses also.

Random Thoughts said...

Joining bit late, but i am sure there is enough to know about.

http://smokinrock.blogspot.com/

-
Gp

Random Thoughts said...

Thanks! Parag for initiating this.

Unknown said...

It is nice to learn at home,I like this course,I want to join this course

suma said...

hi.
can i join dis??
http://sumajarubula.blogspot.in/

Jignesh Jain said...

Jignesh:
http://jain-jignesh.blogspot.in/

Vaibhav Shah said...

Hi parag,
nice working...i also wanna learn advanced java...

http://shahvaibhav.webs.com/

rammi said...

i want to learn adavnce java

RUCHI KHANNA said...

http://rockinglyf.blogspot.in/

Unknown said...

Thanks for creating and starting this course, I like the look of this, will go through the course and I think surely I'd love it. Essaycapital

Unknown said...

Thanks for Sharing this valuble information and itis useful for me and ADV JAVA learners.We also provides the best Online ADV JAVA Training classes.

anil said...

Thank u so much.
http://anilpahane.blogspot.in/

Unknown said...

Nice information. Our institute Is the Leading online institute in Hyderabad, India to provide JAVA online trainings with the real time experts and certified professionals. alot JAVA Online Training.