Monday, April 30, 2012

Safely Rebooting a Hanging Server

When all else fails, go to the physical server console and hit:
Alt-SysRq R (wait for 21 secs)
Alt-SysRq E (wait for 21 secs)
Alt-SysRq I (wait for 21 secs)
Alt-SysRq S (wait for 21 secs)
Alt-SysRq U (wait for 21 secs)
Alt-SysRq B

Then cross your fingers as the server should reboot

I hope you found the post useful. You can subscribe via email or subscribe via a feed reader to get relevant updates from this blog. Have a nice day.

Friday, April 13, 2012

Problem with grails, maven and spring security

Ubuntu 12.04 3.2.0-20-generic-pae kernel
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.1) (6b24-1.11.1-3ubuntu3)
OpenJDK Server VM (build 20.0-b12, mixed mode)

I installed STS 2.9.1 RELEASE which includes apache-maven-3.0.3

I placed the apache-maven-3.0.3 in my PATH environment variable

I created a project with:
mvn archetype:generate \
-DarchetypeGroupId=org.grails \
-DarchetypeArtifactId=grails-maven-archetype \
-DarchetypeVersion=1.3.7 \
-Dversion=1.0.0alpha \
-DgroupId=com.henyo.foobar -DartifactId=foobar

mvn proceeded to download the internet and then created the project folder with the pom file
I modified the pom file to set the source and target to 1.6 as described in the grails manual

I then did:
mvn initialize
which created the grails directory structure

I tried:
mvn grails:run-app
which resulted in the app successfully running

I then tried running just the unit tests with:
mvn grails:exec -Dcommand=test-app -Dargs="--unit"
which resulted in successful build

I then installed the spring security core plugin with:
mvn grails:install-plugin -DpluginName=spring-securit-core

I then tried using the s2-quickstart script:
mvn grails:exec -Dcommand=s2-quickstart -Dargs="com.henyo.foobar.model User Role"
which resulted in a build FAILURE:
[ERROR] Failed to execute goal org.grails:grails-maven-plugin:1.3.7:exec (default-cli) on project foobar: Unable to start Grails: java.lang.reflect.InvocationTargetException: org/springframework/security/core/Authentication: -> [Help 1]

It seems that the grails maven integration still needs a lot of work. I suspect this is a dependency resolution issue.

Uploaded a sample project that has this issue:

I hope you found the post useful. You can subscribe via email or subscribe via a feed reader to get relevant updates from this blog. Have a nice day.

Books for Software Development

My updated reading list

Learning Programming
How to think like a computer scientist: Python Edition
Thinking in C beta 3
The Passionate Programmer

Learning Java
Head First Java 2nd Ed
How to think like a computer scientist: Java Edition
Objects First with Java
Thinking in Java 4th Ed
Big Java
Agile Java: Crafting Code with Test-Driven Development
Core Java Vol 1 & 2
The Art & Science of Java
The Java Programming Language

Programming Practices
The Pragmatic Programmer: From Journeyman to Master
Pragmatic Version control using git
Pragmatic Unit testing in Java with JUnit
Pragmatic Project Automation
Debug It
Ship it
Release it

Learning Basic Web Frontend Development
Head First HTML with CSS & XHTML
Head First Javascript
Javascript the Good Parts
Stylin' with CSS: A Designer's Guide (2nd Edition)
Designing with Web Standards by Jeffrey Zeldman and Ethan Marcotte
Web Design for Developers: A Programmer's Guide to Design Tools and Techniques by Brian P. Hogan
Eric Meyer on CSS: Mastering the Language of Web Design by Eric Meyer
JQuery in Action by Bear Bibeault and Yehuda Katz
Handcrafted CSS by Dan Cederholm with Ethan Marcotte

Learning Swing Frontend Development
Desktop Java Live
Swing Second Edition
Java Swing

Mastering Software Development
Head First Object-Oriented Analysis and Design
Head First Design Patterns
Code Complete: A practical handbook of Software Construction
Clean Code: A Handbook of Agile Software Craftsmanship
Program Development in Java
The Elements of Java(TM) Style
Effective Java
Practical Java
Design Patterns: Elements of Reusable Object-Oriented Software
Patterns of Enterprise Application Architecture
Domain-Driven Design
Refactoring: Improving the Design of Existing Code
Refactoring to Patterns
SQL Anti-patterns
Modular Java
Growing Object-Oriented Software Guided by Tests
Holub on Patterns:Learning Design Patterns by Looking at Code
Test Driven Development by Kent Beck
XUnit Test Patterns - Refactoring Test Code by Gerard Meszaros
Concurrency Practice in Java
Java Generics and Collections
Java Performance
Java Puzzlers

Methodology and Management
UML Distilled, 2nd Edition
Extreme Programming Explained
The Unified Software Development Process
Rapid Development: Taming Wild Software Schedules
Peopleware: Productive Projects and Teams
The Mythical Man-Month
Software Runaways: Monumental Software Disasters
Software Creativity
Agile Estimating and Planning by Mike Cohn
Agile Software Development, Principles, Patterns, and Practices by Robert (Bob) C. Martin
Agile Retrospectives: Making Good Teams Great by Esther Derby, Diana Larsen, and Ken Schwaber
Succeeding with Agile: Software Development Using Scrum by Mike Cohn
Agile Testing: A Practical Guide for Testers and Agile Teams by Lisa Crispin and Janet Gregory
Extreme Programming Installed by Ron Jeffries, Ann Anderson, and Chet Hendrickson
Behind Closed Doors: Secrets of Great Management by Johanna Rothman, and Esther Derby
Leading Lean Software Development: Results Are Not the Point by Mary and Tom Poppendieck
Lean-Agile Software Development: Achieving Enterprise Agility by Alan Shalloway, Guy Beaver, and James R. Trott
The Art of Agile Development by James Shore and Shane Warden

Mastering Groovy and Grails
Groovy in Action
The Definitive Guide to Grails
Grails in Action
Groovy Recipes
Programming Groovy

Mastering Web Design
Web Design for Developers
Head First Web Design
Designing Web Usability

Mastering User Interface Design
User Interface Design for Programmers
Don't Make me Think
About Face: The Essentials of User Interface Design
Design of Everyday Things
The Non-Designer's Design Book

Mastering Hardcore Stuff
Code: The Hidden Language of Computer Hardware and Software by Charles Petzold
The C Programming Language
Structure and Interpretation of Computer Programs
Introduction to Algorithms by CLRS (Cormen,Leiserson,Rivest,Stein)
Compilers: Principles, Techniques and Tools
Test Driven Development for Embedded C
The Art of Computer Programming

- Head First Java
- Head First Object Oriented Analysis and Design
- Head First Design Patterns
- Effective Java
- Concurrency Practice in Java
- Java Generics and Collections
- Java Performance
- Java Puzzlers
- Thinking in Java
- Clean Code

You are also welcome to subscribe via email or subscribe via reader to get updates.

Tuesday, April 03, 2012

Trying Ubuntu 12.04LTS Precise Pangolin

I migrated my desktop from Ubuntu 10.04LTS to Ubuntu 12.04LTS.

A few things I needed to add after installation:
  • Chromium as my default browser
  • adobe-flash to be able to play flash games on facebook
  • openjdk-6-jdk for work stuff
  • icedtea-plugin to be able to run charting applet on citisec
  • pidgin for messaging
  • git for more work
  • smartgit for routine pushing and comitting to git repos
  • smartsvn for routine pushing and comitting to git repos
  • STS for work stuff
  • DB Visualizer for work stuff
  • Virtual Box for desktop virtualization
  • Dia for diagramming
  • synergy to share one keyboard between my desktop and laptop
  • dropbox for personal file sharing
  • pencil for mockups
  • smplayer for watching videos
  • vlc for videos that do not work with smplayer
  • git gui for simple git commits
  • myqsl-server for development work
  • mysql workbench for managing mysql database
  • postgresql for development work
  • pgadmin for managing postgres database

Should I be replacing stuff on the list with something else? What other stuff have I forgotten to install?

I hope you found the post useful. You can subscribe via email or subscribe via a feed reader to get relevant updates from this blog. Have a nice day.

Monday, April 02, 2012

Protecting ProxmoxVE VMs with IPCop on KVM

I found out a few weeks ago that protecting openvz virtual machines running ubuntu was a bit problematic as I was unable to run UFW on them.

I was able to setup IPCop v2.04 on KVM which will act as a virtual firewall for all of the virtual machines in our ProxmoxVE 2.0 cluster

I hope you found the post useful. You can subscribe via email or subscribe via a feed reader to get relevant updates from this blog. Have a nice day.