Monday, August 24, 2015

Recovering Lost VMs in VirtualBox GUI

This article is a short step on how to recover you VMs in the VirtualBox GUI.

Case

I upgraded my windows machine from windows 8 to 10 and suddenly stumbled on an empty virtualbox GUI. It was almost heart wrenching for me because, I had six vm as lab. I did as much googling as I could but did not get a suitable answer. So I resulted to reading up the Virtual Machine Guide.
While this exercise was carried out on version 5.0, it works well for VirtualBox 4.0 and later.

VirtualBox GUI without existing vms entries.



Existing vm files on disk


Conditions

This process will work

  • if our virtual machine guest folder has not been corrupted and still intact.
  • regardless if you had to do a new installation all over again. Just ensure the version you are installing is the same as the one your previously lost.
  • whether or not you lost your VirtualBox.xml file in the \.VirtualBox location.



Recovery Steps

Open the VirtualBox.xml in an text editor (I use Textpad). Search for the tag . Two things are possible - 
  1. The tag has content as in but the source ("src") attribute of the entry tag is pointing to the wrong location of the VM.
  2. The tag is a closed tag as in or which means that VirtualBox has lost a reference to all the VMs on the host.


Case 1

Simply edit the value of the "src" attribute to point to the correct location of the guest .vbox file.
the vbox file of the guest machine


Case 2

If the close machine registry tag is of the form , change it to the open form and enter the following entry

where
MACHINE_ID - this should be gotten from the vbox file of the guest. Open the .vbox file in a text editor and look for the uuid of the tag.
the uuid of the guest machine

The entry highlighted above is the uuid for this machine and should be the same with the uuid of the machine registry in the VirtualBox.xml.

Which ever case you use, save the file and reopen VirtualBox.

Sunday, June 3, 2012

CyberSpace: the latest battle front

Stage set for the latest in cyberspace front of modern day war
I wouldn't want to call it excitement but I have this high feeling now that it has become quite official that we now have a new front line in modern day warfare - Cyberspace. How?

For the first time, a country's military has announced that it uses cyber space to gather intelligence and also attack the enemy network. It is implicit a call for all the nations of the world to begin to look into that direction.
It is just about a week ago, the Israeli military also graduated its first class of 'cyber defender', a team of high techie soldiers whose work is for fight and defend Israel's cause on the cyber space. You would expect that these guys should have received the best there is of network and system attack, defense and hacking. They are the first to officially step into this new frontline of conflict.

Also, it has been reported that the Iranian government has budgeted about $1 billion to launch herself as a force on this front. Well, who will blame her after being a victim of a likely state-organized attacks like Stuxnet, Duqu and most recently Flame.

Prior to now, we have seen virus attacks like Stuxnet, Duqu and flame as covert ways of military reconnaissance or attack or have seen hacking at a corporate level. Well, its wholly different now.

In no distant time, we will begin to see more countries formalize this unit in their countries arm force. Great days ahead, in my opinion.

IDF admits to using cyber space to attack enemies

IDF graduates first ‘Cyber Defenders’ class

Tuesday, December 20, 2011

Online education: ....and it happens

It doesn't come as a surprise but here we are. MIT has taken the steps of Standford University and we will be expecting their schedule any moment from now. They have already made their intention to conduct online courses known, and it is already on their website click here.

Soon the list of courses will be released. It is really gonna be a great time for me and similarly hungry people around the world.

Friday, December 2, 2011

Do java reverse engineering with cavaj

Yes, they say that reverse engineering is the science of decomposing any engineered piece with a view of composing it again, right?

Quite rightly, viewing java class file (*.class) are the best ways to reverse engineer java applications.

Severally I have been faced with a task of integrating complex systems, most of them java-based proprietary system. Since companies of proprietary system will never put resources of their product on the net, I mostly result to taking down the entire application, cross-checking log files with the decompiled class file and sooner than I imagine, I am able to imagine the system internals mentally. That is where the solution begins.

You may check cavaj for yourself here.

We should note that cavaj is not good for those who don't yet have basic understanding of java programming language. The code produced by cavaj is not equivalent to the java source that produced it. No annotations, documentations, String addition with the "+" operator are changed to StringBuilder(...).append(...) mechanism, inner class are changed to class_name$inner_class_name, anonymous inner class are changed to class_name$number (like 1,2,..), constants are replaced with their values and many others like that.

For those who love reverse engineering in java, enjoy cavaj.

Wednesday, November 23, 2011

Standford Online Engineering course: More classes

Surely, we are seeing a new trend that will define education in the nearest future and gladly I am a participant.

The Standford Engineering Everywhere (see) just added me courses to the list of courses announced. They include

January 2012


* this is the first time, I am noticing a Professor from another university other than Stanford participating in this programme - Professor Dawn Song. Things are changing.

Those interested in medicine, Electrical and civil engineering can now join us in this education offering.
Once again THANK YOU STANDFORD - you are the best.

We may not have the privilege of having a Standford degree but now we can have the Standford knowledge.

Monday, November 21, 2011

Stanford Free Engineering Courses for 2012

Below is a listing of all the Standford free Engineering courses online. They are grouped into category of commencement period and are arranged alphabetically.

January 2012
  1. Cryptography with Dan Boneh
  2. Design and Analysis of Algorithms I with Tim Roughgarden*
  3. Game Theory with Matthew Jackson and Yoav Shoham
  4. Human-Computer Interaction with Scott Klemmer
  5. Machine Learning with Andrew Ng **
  6. Natural Language Processing with Chris Manning and Dan Jurafsky
  7. Probabilistic Graphical Models with Daphne Koller
  8. Technology Entrepreneurship with Chuck Eesley

February 2012
  1. Computer Science 101 with Nick Parlante
  2. Software Engineering for Software as a Service with Armando Fox and David Patterson
  3. The Lean Launchpad with Steve Blank

* - the name of the course - "Design and Analysis of Algorithms I" and I wonder if somehow there is a "Design and Analysis of Algorithms II" coming up later.
** - Machine learning with Andrew Ng is going to be a similar course with the one previously taken on the site www.ml-class.org

This is a whole lot of stuff coming up for 2012.
The intention is clear and awesome - you get to learn 9 strong engineering courses and 2 entrepreneurship courses to help you get to the market.

First quarter of 2012 is really gonna be fun.
We may not have the privilege of having a Standford degree but now we can have the Standford knowledge.

Stanford Online Engineering Courses: Machine Learning

I have really kept things musing within me about the recent free online course offered by Stanford University's School of Engineering online through the Standford Engineering Everywhere programme. Courses currently on-going include
  1. Machine Learning with Professor Andrew Ng
  2. Introduction to databases with Professor Jennifer Widom
  3. Introduction to Artificial intelligence with Prof. Sebastian Thrun and Peter Norvig
I was initially tempted to take all the course (with less participation in the DB course) but going live on the course, I knew that sometimes you need both hands to squeeze all the juices out of the orange. So, I stayed on Machine Learning and it has been very fantastic.

Not only has the course opened up areas in computing that were faint and becoming increasing obscured, it has completely laid open my cognition and sense of recognition. I was already getting my hands dirty with programming in R but Professor Ng pointed strongly encourage octave and I just got better with the two.

It is worth noting the wonderful lecturing skills of Professor Ng and whether or not he reads this, I would like to say THANK YOU to him and to Standford School of Engineering.

We may not have the privilege of having a Standford degree but now we can have the Standford knowledge.

Wednesday, July 13, 2011

Oracle Certified Master, Java SE6 Developer certification: Success!!!

I received a mail today from Oracle Education:

Hi Enudi Michael,

Congratulations! You have passed the Oracle Certified Master, Java SE6 Developer certification. You are among the elite 1% of certified Java professionals who have gone on to achieve the Oracle Certified Master, Java SE6 Developer certification............


My delight is still inside of me. These are few reasons:
  • I wanted to do the exam mainly because I finished reading on java concurrency and wanted some real form of proof that I could deliver on what I read. But after do my assignment, I must confess that I used less than 25% of what I know of java concurrency. So was a little disappointed with that.
  • Coding life was getting bored for me and I wanted a fresh challenge. A friend suggested writing a certification. I tried learning a new language - python but still wanted something more so went for the advice.

The sweeter part for me was the fact that I visited the best java certification guide site on the internet www.javaranch.com for some clues on grey areas. But after a while, I discovered that some fundamentals of my design were argued against in the forum. Though astounded, I stuck with my ideas against the feeling of disobeying "the pundits". I did it my way and try my best to document my supposed exceptions. And this is the best feeling of my results - a renewed sense of self-confidence.

I am happy.

Saturday, June 18, 2011

CORPORATE ELECTION

Something rather new happened at my office which was re-organizing the ORC Committe of company and appointment of a representative at the CIIN body of Nigeria. The same person was suppose to act as the ORC Committee leader in-house.

Due to the recent political development in Nigeria, there was a resultant political air in the entire company which has over 26 branches across the nation and somehow I was nominated to design an election system (online) for the exercise.

There are many such tools on the internet to help me get my job done but because there was a request that voters must be authenticated using the our internal active directory server, I chose to write my own voting system. Another reason being that I was told less than 24 hours to the exercise and I didn't think I had the luxury of time to learn something new.

Quickly, I wrapped up a four pages web application to for the voting exercise and also to release the results online as well. I relied on JNDI for connecting to Micrsoft Active Directory and jsp, jsf and servlets for the web applications not mentioning oracle for the database. Everything was done in time. My team members in other project hard-tested the application - they broke it once and I had to fix.
The application scaled quite well and users comments were quite impressive.

The election went quite smooth except for so branches that couldn't connect for some network failure during voting. Results were release online as expected.


The best thing of the day was that a major management staff asked me after the election, "WHY CAN'T THE NIGERIAN GOVERNMENT IMPLEMENT SUCH A SIMPLE PROCESS IN CONDUCTING ELECTIONS IN THIS COUNTRY?". There were answers.


I seem to have a new nick name in the company "JEGA" - the name of the current chairman of the independent electoral commission in Nigeria.

Wednesday, May 4, 2011

gNigeria 2011 is over

gNigeria 2011 is officially over and it was really a great time with google.

The entire atmosphere was graceful and the presence of googlers (as we were taught to call google staffers) increase our lookout for hands-on sessions. Developers in and around Lagos came with great expectation and I don't think there was a let down except for the epileptic internet connection that plagued most of the first day.




Breakout sessions had different topic but I was able to make two

Cloud Computing with App Engine
Web Development with Google Web Toolskit (GWT)

The hands-on sessions were great and they really reflected what it should be. I have my head first introduction to GWT and feel that I could get some projects done with it. Tom Hofmann (our instructor) did a great job, Michael Springer and Obum Ekeke where really of help in assisting him.




The competition was cool and full of adrenaline as the grand finale of our sessions. I had my share of belief but the winners were just great. The had the ideas and were able to implement it to the latter. I congratulate them.



I really appreciate Google for the time and resources they put in not only educating developers but also reaching our to educational institutions in sub-saharan Africa. It is really an effort worth applauding.

I guess it is time to learn AppEngine and GWT to real expert level and begin deploying commercial applications with/on it.



Weldone Google!

Monday, May 2, 2011

gNigeria: Expectations

Yes! Tomorrow, some developers in Lagos Nigeria will be having a technical session with Google. I have known and registered for this since April (link is here) and I'm really eager to see what it's all gonna look like.

Personally, I am looking towards the tech sessions on three different fronts but I can only be in one place at a time. So, till tomorrow I don't know where I am going to be among my three preferences of

Mobile Web and Android
Cloud Computing (I take this to be about Google App Engine)
Building Web Apps (I take this as GWT)

So I will know when I get there.

I missed Google DevFest (google developer event organized last year) by a day and I could tell how much I missed. But surely not this time.

My eclipse environment has been set up and I am ready to go.

Sunday, April 24, 2011

To cloud or not to cloud

In the past two weeks, two persons separately came to me asking me about taking their businesses to the cloud. And my first answer was "How has your system performed outside the cloud?".

There are indeed many reasons to cloud but one good reason not to cloud is trying to do it because the topic seems to be a big buzz on the internet.

It is quite a sad new but the recent failure of the Elastic Block Store (EBS) will again throw more questions on exactly how are we supposed to go about "cloud"ing our businesses.

Considering a situation where a client doing a non-internet business is having her entire system in the cloud. The advantages of such are well numbered but downtimes like this could really suck. Therefore, I will advise company who must go cloud (because of the well numbered advantages) never to put their life entirely in the cloud but keep a copy in their hands as well. This would mean local copies. But can we have local copies of cloud services?

This in itself brings up the issue of service and data synchronization. And of course, unless we have to completely take faith in our cloud company, is another big science which we will all one day need to answer.

Happy Easter.

Wednesday, April 20, 2011

LONG TIME NO PHP

It is more than 5 years ago I did a medium-scale project in PHP and coming back this time to lay my hands on the language again really tells how fast time flies. Varieties of Content Management Systems (CMS) were available for work. In 2005, I was only privy to systems like Mambo, Joomla and Drupal and PHP frameworks like Zend and cakePHP. Now, I cannot count how many such frameworks that exist on the internet.

The most noticeable change in the language for me was the standard OOP feature that was built into the language. Back then in 2004/2005, my knowledge of java got in the way of building OO classes in PHP, though I built many of my components in OO fashion. Now the OOP in PHP in my opinion is mature and can allow for wide-scale flexibility in the language. It is even more lovely to see that I could build php codes with my favourite used-to-be-only-java IDE - Netbeans.

Now I know I got more to learn because PHP is ever more powerful. Combining such power with AJAX has made the web what it is today. I most run now as I have so much to cover about this beautiful language.

Sunday, April 10, 2011

I am the worst blogger there is....

Yes this is true: I was just in my bathroom today when I asked myself "when was the last time you blogged".. and I thought to myself.."surely like years ago..

Officially, I am the worst blogger there is on planet earth and I accept that in good faith. I am hoping to change because for real, there is a lot to blog about software (java, oracle, bi and databases, web development, python, php and soa), music, history, travels and my countries national election. Yes, I am officially back and don't hope to stay away for such a record time.

Good to be back/

Wednesday, June 24, 2009

Long Time .....

It is really not an easy thing to blog. I always thought that I have a blog, I will update on hourly bases but now reality has donned on me.
Although I have a lot more to say than I ever did, I hope to constantly bring them even by event.
Ranging from my various research in web and enterprise technologies to new songs that I have written, projects I am currently handling at work to my latest love - Trading. I will begin to unfold various gist at different times.

For now I must get back to work with a better hope of getting my blog very updated.

Saturday, July 19, 2008

Hello This is My Blog



I have a lot to share and just the once took out time to begin sharing.
A lot to share. Thank God for this time and life. It is really cool
it is all about my passion and skill, experiences and observations, stories and history.


  1. Michael and God

  2. Michael and Computing

  3. Michael and Literature

  4. Michael and Music

  5. Michael and friends

Michael and life

Hey folks, don't mind my passport photograph, I look a too serious here. Don't mind, I am far from that except when my code is not running.

chao