Posts Tagged ‘Open University’

Switching from VCS, DVCS

Hello,

I originally started to write this for a post in a closed, Open University forum for TT381 (Open Source Development Tools, part of Web Applications Development qualification). I wanted to widen the audience. So apologies if it reads a little odd for a web post. I don’t have time to rewrite it.

I was just wondering what version control system (or systems) you use at work, and if you have thought about how your ways of working, branching and migration of changes would map onto a DVCS, like GIT if your using a VCS like Subversion of CVS. Or maybe how a VCS would be used if you use a DVCS and had to switch back).

Last night I went to bed pondering how we do things at work using Subversion, and how I would be able to use GIT to achieve the same. We have a very prescribed way of managing changes, including when we move them. (Testing and other parts of life cycle need to be synced)

I had to setup the way we use subversion to accomplish the way the company wanted to work. I know it’s the simplest way we could setup Subversion, but it’s slightly unconventional. We don’t merge al changes back to a main trunk, and if I was to spend the time explaining you would see why.We have to use a very targeted management change, so working on a branch and merging it back to main trunk doesn’t work for a few reasons. We have to be able to tailor whats on a branch.

The up shot is, having proved for myself the way we use Subversion at work is probably the only way we could use it. This is based on considering the existing way is simple and effective, and that a better way of doing it would involve more complexity, and therefore more understanding and commitment from the rest of the team.

We could map the same way of working onto a DVCS, in this case GIT, very easily. And it would make migration of change operations allot quicker, simpler and easier. It would be easy to use a main trunk rather than successive branches.

So, my question is, would using a DVCS like GIT (pick your own poison here, Mercurial etc), improve your way of software development?

The only problem we would have is, that we have to have a custom made interface for our version control system, and switching is an effort. Creation of a new front end would take too much development time out and we have too many real world projects. Then the planning and switch over would incurr another over head and affect the whole team. So at least whilst writing the new GUI it’s just me offline for projects. Then there is the bedding in and ironing out of issues once we have switched. Of course not forgetting all that training.

Russell

 

2012 Goals

It’s August 11th 2011 and already I am starting to see what I want from 2012. Although personal priorities are not included!

  1. Open University
    1. Sign up and complete TT381
    2. Sign up and complete TT382
  2. Yoga Teaching
    1. British Wheel of Yoga – 15 CPD points – possibly from following list
      1. Vinyasa Course – bwy web
      2. Chakra and Teaching – bwy web
      3. Wisdom of the Heart (Mandala Yoga Ashram)
      4. Ongoing Training for MYA-Graduate Yoga Teachers (Mandala Yoga Ashram)
    2. Continue to Teach yoga classes, at least one class a week.
    3. Organise YTTC notes  (inc. recordings) for ongoing study and revision
  3. House – Clear out old stuff
  4. Visit friends in Spain
  5. If possible; Save towards India trip in 2013 for the World Yoga Convention will be held at Bihar School of Yoga in Munger September 7-13
  6. Theme for Year – Tidy and Focussed
  7. Spirit of the year – Simple and Spacious
  8. Continue with guitar and singing lessons
  9. Try and jam with friend
  10. Have fun

2011 Goals

As 2010 nears to an end its a good time to workout what I want from 2011. I could drift through the year, but then I would look back and think what have achieved! Time, it’s precious, so I will focus on a few things that are important!

These are my aims for 2011. They are listed in level of importance to me looking at the year as a whole. As with everything, keeping a balance in the time I spend on these activities is key;

  1. Complete the yoga teacher training course, and PASS IT! – COMPLETED :-)
  2. Establish and maintain the teaching of regular yoga classes (building on my teaching from 2010) – ON COURSE
  3. Cultivate existing relationships – EASY AND ON COURSE
  4. Complete the last presentation of TT380 and plan for TT381 and TT382 (Open University) – SIGNED UP for TT380
  5. Attend regular yoga classes as a student – ONGOING
  6. Sort out the TV situation – No Need!
  7. Have fun – Friends and holidays happening :-)

M255 Java Calculator

M255 Java Calculator

Having completed the Open University course M255 I decided I wanted to put my new found knowledge to use. I needed a project, and wanted to learn about how user interfaces are programmed in Java.

A Calculator seemed like a good project, but I set myself a few restrictions, they were;

  • Not allowed to use an ‘Integrated Development Environment’, I used the VI text editor instead.
  • Use compiler (javac) and Java Virtual Machine (java) to run it from the command line.
  • Not allowed to look at how other people had programmed a calculator
  • The only source of help was my knowledge of Java from M255, and, The Java Tutorials at the Sun website.

One of the reasons for putting the details of the project on the web was to show others what can be achieved after completing M255, and to welcome feedback from people, including experienced developers.

Source and Design

This project has been split into phases to make development more manageable within the limited time I have. Initialy I wanted to create a user interface that responded to all the events I needed and then make it work like a calculator. What surprised me was that it only took an hour and a half to create the user interface, being that I am no expert means I have probably not implemented it as well as I could have, but thats why ive signed up for M257.

Version Description Classes
v1.0
29th October 2006
Original version with basic calculator features Calculator
Calculation

Instructions

Future enhancements

As anyone working in software development knows, programs always evolve, and the Calculator is no different, I see the code/implementation changing as I receive comments from more experienced Java developers, and to add the following;

  • Convert into an Applet so people can see the Calculator on the web without having to download it and run it locally.
  • Add support for keyboard use, at present this is purely mouse driven.
  • Nested brackets
  • Improve the layout of the interface, it could look better.
  • Add other scientific functions, maybe even graphs as I get really adventurous.
  • … and more as either I think of them or people suggest them.

Warning!

As I am no expert on Java or Java user interfaces I obviously have no idea if there is a better way of achieving what I want, or for that matter if I have committed any sins in the code I have created; however, I hope this project evolves and can become a case study tracing the evolution of the calculator from the original source (v1.0) through it’s evolution into a more show case calculator program.

This is a purely educational project; I don’t see this being of any real use to any one other than to learn from.