CSC 430 Useful Links from Fall 2013
Matt Carson Aaron Clark Cody Driskill Parks Frazier Jennifer Gross MiGyeong Gwak Jerad Hobgood William Holt
Emilee King Jinbo Lin Jason Mallory
Keith Neer Xulong Peng Tyler
Roberts Christian Vargas Wissem Zrelli
excellent source for beginners with no ideas on Git. It is very
reader friendly and doesn’t have the long drawn out explanations,
but instead, uses easy to understand comments to explain what is
video is roughly an hour, however, it covers everything from the
installation of Git on both Windows and Mac, why you should use it,
various examples of codes, client applications, and even the various
services offered through Git like GitHub or Beanstalk.
of JeremyBytes Clean Code: The Refactoring Bits
by Steve Freeman about TDD: How Do We Know When We’re Done
Katas, this is a series. Solutions are available in the comments.
Kata practice using TDD.
Play” Video of TDD
argument of version control softwares
on design patterns with java understandings.
checker via TDD. Has a little bit of static, but is still
This shows you what not to do by telling you how to write unmaintanable code.
Offers a brief overview of most all known available revision control software.
This blog offers a viewpoint that most coding Katas are not useful, as they are just repetative.
This blog suggests not to use design patterns, as people get too dug into them, and arn't true software engineers.
A list of Coding Katas for those who wish to try them appropriatley.
The first in a series about how to use Git.
Video for tutorial on using TortoiseSVN
Written tutortial on the usage of TortoiseSVN in windows.
While giving some helpful advice about how to tell if code is done
correctly, of strongest note is the first large comment below the
This talks about the root cause of singletons, which they call an "anti" pattern, and why Singletons are bad.
some pretty basic, but still important tips that apply to pretty
much any language.
down different clean code techniques into karate style belts to
indicate importance. Helps to clarify basics and even more advanced
techniques to keep in mind.
some tips to help write PHP code and could double up and helps a bit
in the web programming class too.
video series that covers code refactoring. I found the guy who does
the videos a bit long winded but maybe some people can relate to
write up of refactoring techniques that pertain to VB. It also has
some good tips that can apply to any OOP language.
is an article about refactoring in the Perl language, and good
practices to employ there. This is particularly useful because Perl,
I feel generally doesn’t get too much individual coverage.
covers C# and the best part is that it actually has examples of
before and after code.
a good overview on how to write good code in general.
slides done at a London University that also give good tips.
overview of refactoring code from the University of San Francisco,
includes links to a database containing patterns to watch out for.
-Quotes from a few leading figures in the Computer Science field on clean code.
-Interesting article that should sooth your pain a little
-Article for Java users on how to use a Finally statement to clean up code
-Some Git tutorials for beginners
-More helpful Git tutorials
-Tips and practices for writing good, readable code
-general coding standards
-10 good coding practices for Java
-great help for coding in PHP
-good powerpoint on design patterns and more coding practices
I love lynda.com. I have had a membership with them for a few years
and watch as many videos as I can on their site. These videos
literally walk you through everything you can possibly want to do
I enjoyed about this document was that it was different than all the
other sources I found on Git. The fact that this source started with
explaining concepts in context with other concepts that I already
knew was welcoming, rather than immediately throwing code at me to
wade through. Also, it was surprisingly sort in comparison to other
sources that I found on this topic.
was too much information on this site for me to just choose a few.
This site has information on both Clean Code and Design Patterns,
including videos, pdfs, presentations, and downloadable code. Jeremy
is very clear, thorough and easy to understand. This was probably my
most visited site during this semester.
page contains several TDD practice problems.
Academy’s Agile in Practice: Test Driven Development.
list of design patterns with code examples.
examples of design patterns in java.
of what is version control
tutorial on TDD.
is a nice and simple beginner’s guide to design patterns. It will
be good for preview on design patter textbook.)
is a good resource to learn design patterns in Java. There are a
quick guide, useful resources, and a tutorial.)
explains the singleton design pattern through the Microsoft .NET
brief explanation of version control and guidance for a practice by
University of Glasgow)
is a version control part in the book of “Producing Open Source
brief overview of software development process by Damon Poole)
is a beginner’s guide to continuous integration by Gilles Querret
from Riverside Software.)
is a lecture note about code refactoring. There are some JGuru
examples to illustrate refactoring.)
is a tutorial for unit testing with JUnit. It includes how to run
JUnit tests in Eclipse Environment.)
contains a definition of object oriented programming to keep code
clean and a PHP OOP tutorial for beginners.)
This is a great source for knowing what
git is and how it works.
The man tends to get off track and can be
hard to follow but is can help a beginner learn what git is.
Helps getting git setup and getting
started using git for the first time.
Sort of off topic a little but can help
beginners who have only taken a few programming classes get to know
Great if you like a simple written
instructions on juit testing.
this is a two part video, the speaker
is a little dry but is great for learning about junit testing.(help
This is a good short intro about TTD.
The code samples use PHP.
This article is opinion bases but
important for newbies. It talking about the difference between
net-beans and Eclipse.
All new programmers need to sit down
and play with both these IDE's and decide which one they prefer to
This link is to just open the ideas to
new students about doing there own resource on the IDE's.
This is one of many in the series about
Design patterns. this video is just saying what is a design pattern.
there are many other videos
about different patterns.
This is .Net Design patterns. on the
page is just a list of links of design patterns click them and will
be taken to a tutorial of that pattern
lynda.com is a great place to learn
about so many great things. this link is about GitHub in all its
( For all your needs, Videos, Readings)
Interesting video on the evolution important languages and how they are still used and impacted current languages
Nifty list of coding standards for different languages, just to help keep things clean and readable
Awesome blog on programming.
We've been over design patterns, here's a guide on Anti-patterns
provide real-world experience in recognizing recurring problems in the
software industry and provide a detailed remedy for the most common
predicaments. AntiPatterns highlight the most common problems that face
the software industry and provide the tools to enable you to recognize
these problems and to determine their underlying causes."
Tips on writing clean code
10 git tutorials for beginners
Refactoring video tutorials, I really enjoyed this. It's easy to follow and actually fun to listen to.
The Principles of Good Programming
Beginner's Guide to Design patterns. It gives examples of design patterns and how to use them
Test Driven Design by Example
This is really cool, this is an online course on TDD.
website contains every single topic of JUnit, and they provide code
sample for every topic. Cons: too much details in all topics.
video was uploaded 3 years ago. Although this is old technology,
indeed this person use notepad to wrote the program instead of using
IDE, this video still provide a clear view of JUnit.
video demonstrate the concept of strategy pattern. He explained this
concept very well in his presentation. Cons: no captions in this
link talks about the concept of strategy pattern and the condition it
fit, so this video demonstrate the pattern by the sample code. Also,
he provide his codes which people can download for the entire
book talks about the design pattern in Javascrpit.
video talks about the concept of version control.
is the next episode of last video, in this video he use Git as
example to demonstrate how version control system works. And he use
his code to show you the function of almost all git command.
visual guide to Version Control System.
presentation about clean code from Google Tech. However this guy is
Online video tutorial website about software.
More on Clean Code practices.
//1. This website has summary of version control and good for beginner to know the basic concepts:
//2. this article outlines the fundamentals of version control. I really like it, clear and neat.
//3. This review article introduces several top open-source version control systems and tools.
//Good reference as it has reference links after each VCS tool!
//4. eBook on Git, free download!
//5. this is a good website shows details how to use Git.
//6. This is from NetBeans about versional control: CVS, Subversion, Mercurial and ClearCase
//7. a good site for introducing TDD: What is TDD, Why use TDD and How to use.
//8. Good slides show for TDD tutorial!
//9. Good site introduces Design Patterns and including
//Principles, Creational/Behavioral/Structural Patterns as well as Forum!
//10. This site introduces Design Patterns and Refactoring
//11. Java Design Patterns
//12. Wikipedia website outlines software development: good introduction
//13. About Testing for software construction
//14. 12 Unit Testing Tips for Software Engineers
//15. How to write good unit tests
//16. This is from MSDN for patterns and practices.
//17. How to write a clean code without comments
//18. How to write a readable source code
//19. Good article for cleaning bad code.
//20. Really good post/comments to avoid bad coding habits for beginner
Using design patterns in places where they aren't needed (hello world)
Changing design patterns to fit your coding needs
Taken from our Clean Code book, refractoring functions
Clean code cheat sheet
Short clean code lesson
Refractoring code (35 minutes long)
Site for using code kata's
Another site to practice code kata's
Robert C Martin's bowling game kata
Introduction to test driven development
Learning the basics of GitHub (1 hour long)
Intro to Learning TDD
1. this site contain tools and management for software construction.
2. this is a google software toolkit site with downloads
A Github site that contains an outline of a software construction
2012-13. It contians link to slides that are apart of the course.
4. this link contains a software construction and testing powerpoint that might be very helpful
5. Link that contain another powerpoint that will help in software construction. Give information about software construction.
6. Link that contains seven tips pn how to construct software successfully
7. This is a short pdf of some tips to write clean code. its only two pages and is a very short read that wont take up anytime
8. Link to a detail report of 12 principles for keeping clean code along with examples
9. Tips for a clean programming code
10. link to a blog where "7 reasons why clean code matter" is discussed and debated