Wednesday, July 24, 2013

source, open!


Oh, I am falling in love with git. Squashing my commits and branching are great!
I did screw up my code couple of times. Now I work with git and keep telling myself 'it's just a graph'.

Just sent out second set of RFC patches to my mentors. Well, I am not satisfied yet. I am never satisfied, as it looks like.

Xen and linux code is getting more friendly, I can pull out now stuff just from source code. I have to admit, the code is just wonderful. It is clean, transparent, easy to reuse.

As a sysadmin I hate blackbox systems. They screw my many nights of healthy sleep. I hate it when I cannot dig into what the heck is going on there INSIDE. It is a great thing when anyone can just look up into the source code and find out what went wrong.

XenAPI. The only thing I did not get yet. I will eventually, and leaving it for now as it defeated me in my few attempts to make my custom VM config options work. libxl showed some mercy and I can
mingle with my domU options when creating domains.

Few times I passed on the red light wich had never happened before. Gotta ask someone to drive me while I have another piece of functionality to think of.

I talk to people around me. I try to explain them what I am working on and what the problem I am trying to resolve. They listen. With people who are not in IT I use abstractions, transforming the programming language into the real-world concepts. Interesting enough, it helps me to think, answer the question and produce new ones. From some people I can get some answer and they would not even realize that they just gave me an idea! Eureka! :) Helps, all that matters what the model we use to resolve the problem.

Tomorrow my proffessor, mentor and my big friend will be celebrating his birthday. He is the one who inspired me and showed the way how to organize work, how to be curious, how to learn new and how to be productive. And he reads Operating Systems Architecture course and inspired many students! Happy birthday, Борис Дмитриевич!











Thursday, July 18, 2013

4:48am. I won.

Happy to see positive result! had to roll back step by step all changes from 3.11.
Result:
hypervisor: xen-4.4-vnuma-unstable
dom0: 3.10.0-rc6+ (no vnuma support yet)
domU: 3.10.0-rc6+ (vnuma support)

Well, it all works nicely together. DomU boots and works with vnuma. But dom0 will need some thoughts to apply since I dont even know whats going on there. 

Tomorrow I will try to git rebase on 3.11.0-rc1+. Good luck to me!



Monday, July 15, 2013

Taking time to think

While the kernel compiles...

That would not come as a surprise to anyone that thinking process leads to a solution finding. I have rediscovered effective method of problem solving :) I know, it is obvious.
'Put away everything and think' I tell myself every time 'it' doesn't work. The new problems come up every time I touch something new in the code. I also recognize that that is being a direct result of me poking on everywhere I would like to learn more about or need to understand.

I am sort of old school sometimes - I use a paper. I just dump whatever I know in drawings with words, some pieces of code, anything, even smiley faces :) That helps me to look at the problem from different angle. Interesting enough, scratching the paper helps to answer right questions. Also redrawing couple of times same concept but in a different form helps to render more information than was previously visible.

I consider myself a person who can easily take too general approach trying to solve all problems at once and forever. Of course, I do not know that to expect in the future, but the tendency exists. Sometimes I do make problem looking more complex that it is. I also do recognize it. And I simplify. OK, I over simplify. Then I am satisfied with the result, I can make it more complex or more universal, but usually it is not even necessary!

Now, after one month after the program start I feel that when reading the code I actually do not see the language semantics, pointers and structures, but I see the functionality. At least in the parts I work on :)

Now I understand what meant the author in one of the books about Linux kernel saying that to understand Linux one should learn about the kernel structures.