Alec the Geek

Reflections on software and related things from an older geek

Archive for December, 2009

Handy Hack:Improving Laptop Security

Posted by Alec The Geek on 31 December 2009

I have always liked having my laptop BIOS boot password on. i.e.  you can’t even boot from a CD unless you have first supplied credentials. However I’ve always been too lazy in the past to login ‘twice’, once to the BIOS and then to the operating system (OS) as a user. I’ve got around that as follows:

  1. Make sure that your screen saver is password protected and enabled
  2. Make sure your OS requires a password after resume
  3. Enable automatic user login.

Now you have to supply credentials every time you want to renew access to the machine, but you only have to supply credentials once on boot.

  • This is only useful if the machine is used exclusively  by you
  • You can either use ‘sudo‘ (Linux and OS/X) and ‘runas‘ (MS Windows) or logout/login to run programs as another user.

Posted in LinkedIn, Linux, Mac, Windows, Work Practices | 3 Comments »

Using TaskCoach with Pomodoro

Posted by Alec The Geek on 29 December 2009

As well as adopting the Pomodoro time management technique I’ve started using TaskCoach to manage my tasks and related lists (based on a GTD style workflow, which I have written about in a later post). TaskCoach has some really useful features, works across all the major desktop platforms, can be used for zero cost and is open source.

Whilst TaskCoach has no direct support for Pomodoro it is easy to add it in by using task templates.

As well as TaskCoach you may need a software Pomodoro timer, I use Pomodairo.

I have created a task template which you can use as a starting point. Download and unpack the template to a file location on your PC. Open TaskCoach and from the file menu select “Add Template”, browse to the location were you saved my template and select it. When you return to the main TaskCoach window you should now be able to select Task -> New Task from Template and see “Pomodoro Task” in the sub menu. Select the Pomodoro Task and you should see something like this

Initial template contents

You can now update the title (make as descriptive as possible so you don’t need to open the task to see what it’s about, but be pithy) and the estimated number of Pomodoros. So it looks like this

Task details updated

Task details updated

When you start your Pomodoro for this task you can open the task to:

  • Add notes
  • Add ‘ for internal interruptions and – for external interruptions (don’t forget to add any new tasks into TaskCoach)
  • At the end of the Pomodoro you can add an X

When you have completed the task you can mark it complete in TaskCoach.

Further Tips

  • A simple way to maintain a daily task is to create a ‘Today’ category in TaskCoach. You can then filter the displayed task list based on that category
  • In preferences select “Show a popup….when hovering over it” and you will see the Pomodoro related information

Posted in GTD, LinkedIn, Open Source Software, Work Practices | 2 Comments »

Learning programming the Alec the Geek way

Posted by Alec The Geek on 28 December 2009

Updated 31/Dec/2009 after reviewing material from Spidertools.com

My son, NimbleJack, is doing computing at school — 6 months so far using VB 6 and next year (our academic year starts in Jan here) he will be doing a 12 month VCE IT course — again using VB 6 <sigh>.

I’ve been pretty unimpressed with the teaching:  a) The lack of core understanding about topics like classes and algorithm design b)  reliance on the VB GUI stopping the students practising important coding skills. So I’ve been encouraging Jack to teach himself Python in order to get around some of the shortcomings of the school course (as I see them).

I chose Python because:

  • Powerful enough to be a proper language
  • OOP features
  • Not as hard to use and learn as C++ or Java

I did consider Ruby — however a lot of the Ruby code I have seen it pretty arcane to a neophyte, despite what the Rubyists claim.

Next we come to my approach to teaching. This is something of a shock to many of my ‘students’ (I’m not actually a teacher by profession by the way) as I see myself as a mentor to assist self learning rather than a ‘listen as I tell you all your need to know’ approach. How does that work? The job of the mentor as I see it is:

  • Set the topics to be learned
  • Review progress (by looking at students working code and exercise answers)
  • Identify appropriate texts and other resources for the student
  • Set the learning pace, with the co-operation of the student
  • Answer questions and be a resource when things get confusing for the student

Apart from that students are on their own. i.e. they have to

  • Plan their studies
  • Do the reading
  • Takes notes
  • Look for other resources
  • Complete the exercises
  • Identify issues and formulate enquires or questions
  • Articulate issues with the teaching and associated material (which teacher is perfect or can’t improve?)

I had made the mistake of expecting Jack to learn from Lutz’s Programming Python which a) assumed to much knowledge about programming systems and libraires and b) does not introduce OOP. This is not a criticism of the book, for someone like me it’s a very useful resource and it is aimed at advanced programming. I’ve just bought “Python Programming: An Introduction to Computer Science” by Zelle. This text concentrates on introducing core programming concepts OO, recursion, string processing etc. Python is used as the vehicle of instruction.

I’m looking forward to seeing how well the new text works, and of course once basic programming has been mastered we can move onto “What a young developer needs to know

Posted in Education, LinkedIn, Personal Opinion, Work Practices | 3 Comments »

Creating a simple professional online brand

Posted by Alec The Geek on 26 December 2009

There are many working people, particularly in my generation or older, who resolutely refuse to create or effectively maintain an online brand or image. In my experience they this it for a variety of reasons:

  • It has no value
  • It’s too hard
  • It exposes too much that should be private

I’ll address these very valid concerns and then suggest simple ways to create an online brand. Before I start let me state  that I am no a Social Media Guru, I just have an interest in these tools and have been using them for some time.

No value

It is easy to find people that claim the creation of an ‘effective online brand’ is the way to easy street and personal fulfilment. I take this with a large pinch of salt and have no doubt that most of these people are still working their day job.

However was is clear is that we are living much more of our professional and personal lives online. Recruiters, customers and the other people we want to involve in our professional lives are turning to tools like Google and LinkedIn. If we are not part of the online community in some fashion then it becomes harder for people to discover and locate us.

As well as the Internet providing a “directory” service, it also allows us to actively showcase our skills to improve our competitive edge when looking for the next position. By publishing our own material on the public Internet we are displaying a variety of desirable traits:

  • We really do have the skills and knowledge we claim because we write about them
  • We can work well in a team because we understand the value of sharing
  • We are keeping up to date with the modern world
  • We are keeping our skills updated by learning new things and writing about them

It must also be said that practising writing for the public is a professionally useful activity in its own right.

Too Hard

It is true you can spend a lot of time on this activity — however it is possible to invest less than five hours a month plus the initial set up time. There are only a few things you need to do to be up an running.

Too much is exposed

How much information you give out is up to you. The approach is suggest here does not include a twitter account for instance, so you won’t be tempted to tell the world about your breakfast.

Approach

  1. Get a blog, like this one (WordPress and Blogger are two popular free services). Aim to publish at least once a month (twice a month is better) on topics related in some fashion to your professional interests. There are more tips on blog writing at http://www.problogger.net/archives/2006/02/14/blogging-for-beginners-2/ and many other places, however be selective about the advice you follow. Your blog posts can cover topics about: your current work; new products related to your interests; considered commentaries on news and other blogs; and your new discoveries and learning.
  2. Create a slideshare account and publish your presentations and papers (make sure you have permission to publish material that may belong to your customers). When you publish on slideshare make sure write a corresponding blog post (e.g. http://alecthegeek.wordpress.com/2006/12/08/slides-and-example-scripts/)
  3. Get a LinkedIn account and make sure your profile is complete and up to date. My objective when creating my profile was to have something that could be printed off and used as a CV
  4. Add the URLs of your LinkedIn account and blog to your business card and email signature
  5. Update your LinkedIn status when you are doing something new (professionally) or publish a new blog entry
  6. When you meet people professionally try and connect with them on LinkedIn straight away

This online brand needs however to be part of a larger activity. You should network actively (get used to drinking a lot of coffee!) and seek opportunities to present at local groups. If there are larger conferences then make sure you submit a paper proposal as well — it’s all grist to the mill.

Posted in LinkedIn, Personal Opinion, Uncategorized, Work Practices | 2 Comments »

The Pomodoro time management technique

Posted by Alec The Geek on 19 December 2009

I have started to use the Pomodoro technique to try and remove distractions from  my work day and focus on what needs to be done. It’s very early days yet but it’s attractive for a number of reasons:

  • It’s simple
  • The Pomodoro task list needed can be obtained from your GTD next actions list
  • It provides a process to handle distractions such as twitter and email

The technique works by allocating work into 30 minutes chunks (called pomodoros) — 25 minutes to actually work on an specific task and a five minute break to ‘rest’. This is designed to stop you getting stale and provides a opportunity to check your email and social media sources without feeling guilty (but you only get 5 mins; and don’t forget to re-fill the water bottle and any needed trips to the toilet etc).

The process also recognizes reality by providing tools to handle interruptions and problems. For instance yesterday my clients PC borked so four of my pomodoros did not get done.

So far the process has me feeling much more in control and able to get work done. I’m looking forward to getting familiar with the process and making improvements to my work day.

P.S. I use Pomodairo on my Linux, Windows and iMac to time my pomodoros

Posted in LinkedIn, Work Practices | 2 Comments »

Top Tips and Handy Hacks for Git

Posted by Alec The Geek on 3 December 2009

Last updated 7/June/2012

I don’t think any of these ideas are originally mine and I apologise that I do no longer have the correct information to credit the appropriate people.

This is my place to put some of the tips and tricks I come across when using Git. There are of course lots of other places on the inter tubes that provide better tips. These are just mine and I’ll update this over time

  1. Before making the first commit to a repo check the email address (git config --get user.email) and if needed set the email address to different value on the repo  by omitting the --global option to the command git config user.email myhandle@cool.com)
  2. Set up a global .gitignore file to be used by all repos
    1. Create a file ~/.gitignore with some useful exclusions (e.g. the backup files for your editor or .DS_Store on OS/X)
    2. run the command git config --global core.excludesfile ~/.gitignore
  3. Help Window users and yourself by running git config --global core.autocrlf input (see GitHub help), but beware of lots of apparent line ending changes after setting this , these are benign.
  4. Keep a copy of this handy picture around as an aide-memoirGit data transport commands
  5. Get a public Git repo account. My favourite is GitHub, other options include Gitorious and BitBucket
  6. Would you like the git help text to appear in a browser. Run git config --global help.format web. N.B. Needs the html version of the Git documents installed. Don’t like the default browser? Run git config --global web.browser chromium
  7. Using https instead of git as your transport protocol? You can now use various helper programs to cache your https credentials. The GitHub setup help page has details for each platform

Using Git from Bash?

  1. Add the following to your ~/.bashrc file NB file locations correct for Ubuntu Linux 9.10 and Cygwin
    # enable git programmable completion features
    if [ -f /etc/bash_completion.d/git ]; then
        . /etc/bash_completion.d/git
        PS1='\[\e]0;\u@\h: a\]${debian_chroot:+($debian_chroot)}\u@\h:\w \$(__git_ps1 \' (%s)\')$'
    fi
    

    On Cygwin try PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ '. If you cannot locate the bash completions file on your system then you can get a copy from the Git source tree

  2. If you prefer to use gvim for your commit messages then add the following to .bashrc (NB You c set this in ~/.gitconfig if you prefer git config --global core.editor=....) export GIT_EDITOR="/usr/bin/gvim --nofork". See below for more Vim tips

Using Git on Ubuntu GNU/Linux? Ubuntu users should add the Git PPA to their sources so that they get Git updates and new releases.

KDiff3 is available for Windows (handy for diffs and merges)

Using Git from Vim? — see the Vim Git tips

Posted in Git, LinkedIn, Work Practices | 5 Comments »

 
Follow

Get every new post delivered to your Inbox.

Join 272 other followers

%d bloggers like this: