My finals are finally over. They were tough, as I failed everything I could in June, but well, I wanted a wedding in the middle of the semester, so I got my semester during the holidays. I'm still happy with my choice.
Now to the exciting stuff. First, I had AI and passed after a few hours of revisions. I was totally prepared in June, but made the lecturer pretty angry by not writing the test at the end of the semester (honeymoon) and not taking it some other time as the result of a few misunderstandings, so, no June exam in AI for me. And the lecturer didn't seem really happy to see me in September either. But, I solved all the problems correctly, so I got a C (yeah, that's my school - they love deduction in both senses of that word).
Then came a few "free" days I used to write my networks program. The teacher was really cool for letting me write in C# istead of C, C++ or Java (none of them being my cup of tea), so I had cool tools like Visual Studio (Why can't Eclipse have a "go to definition" feature? Why? Me wants!) , Linq (goodbye, parsing XML, hello, tricky code instead of for loops) and asynchronous sockets, thanks to which I didn't have to create a single thread expilcitely, and yet my application was super-thready.
That was nice, but still, implementing a protocole and a client took me more than these four free days. It took me the entire day I had for learning compilers and one and a half of the two planned for partial differential equations. There went compilers. Fortunately, they were an extra classs I took.
Equations survived. The battle was hard: revising a whole semester in one afternoon and learning the stuff I didn't get in June. At that point, your goal is pretty much not to know less that you did last time, but I think I did know more, and I passed.
The evening after equations was equally busy: the networks exam was the next day. Dear Hubby explained some stuff to me, I was well prepared. Plans for Friday were clear: get to school by 11:30, print network notes, show the program at 12, study with strangers until 14, take exam, leave.
I arrived at 11:30. My printing limit was reached. Then I realized that I needed my advior's signature bad. Really bad. Panic. The advisor is at school only on Thursdays, so what was the probability of him being here on a Friday, out of the blue? Panic. Run. Buy extra printing credit. Run to the lab guy. He not here. Other student waits too, not knowing more than I do. Okay, let's see if by any miracle the advisor hasn't shown up. He has! Two colleagues are waiting by his door and tell me it's for about an hour of waiting. We exchange valuable advice on handling the masters stuff. Lab guy still not here. Go to the admins for the printing credit, thanking heavens for the advisors presence. Get the credit. Print the notes. Oh, here's the other student waiting for the lab guy, e-mailing him. I go upstairs, because the lab guy should be there. He is! Boot pretty pink netbook. Show program. Program is liked! Advisor again. One guy, new to me, is waiting. I sit and wait with him and praise my advisor for the thesis subject he chose me. The guy enters, I start walking in circles in heels. I finaly get there. I learn that my thesis doesn't need to be extended, just finished - great news! Run. Grab coffee. You think you'll learn anything in the last 20 minutes? Not really. Breathe. Relax. Take exam. Unexpected questions. Think hard. Finally!
I'm sleepy. My head aches. I go home and take a nap. Two hours later, my husband comes home and wakes me up. My head still aches. I take meds, planning on going for a walk. I learn that I'm hot, fever sense. Meds don't work. Let's sleep some more. Sixteen hours more. Then Husband makes me wake up, and finally, finally, finally, I get back to something I like to call "normal life".
17 September 2009
Finals finally over.
13 January 2009
Silverlight and localization
Lucky me! I got a new project: the new company's website. Such sites need to have two features:
- an impressive presentation layer
- a few languages versions
There are a few catches. First, there is no easy way to do that as in asp.net (there should be!). Microsoft published an article on localizing Silverlight applications and it's no fun to read. But, we're big boys, let's add our resources files by ourselves, rename them and stuff.
Second catch is coming: the constructor in the resourse.designer.cs file is protected instead of public. Two workarounds here:
- change it yourself everytime you modify the resource
- get a tool for that: Dmytro Kryvko’s Extended Strongly Typed Resource Generator 2.3
I don't know... you might have more luck than me. If you wanna localize, start with reading "Silverlight and International Thoughts". There's a fully detailed instruction on creating a localized application in 43 steps.
As much as I like Silverlight, localization is a nightmare and that disappoints me a lot, as it's something that's been done in asp.net already - I feel like reinventing the mouse wheel here!
09 November 2008
Silverlight: dynamically finding a storyboard in the VisualStateManager
Okay, I haven't been writing about Silverlight for quite a while, but here I am again!
Today, I'll discuss dynamically finding a storyboard in the VisualStateManager.
Basically, when you want to refer to some object, you set the x:name and there ya go. Here, things aren't half that simple.
In August/September, I used the following code, inspired by something posted on the official forums:
var query = from trans inUgly like an ugly workaround, but it worked in Silverlight 2 beta 2. But then Silverlight 2 came out and that didn't compile anymore.
(from stateGroup in
VisualStateManager.GetVisualStateGroups(LayoutRoot)
where stateGroup.Name == "VisibleStates"
select stateGroup).First().Transitions
where (trans.To == "Visible" && trans.From == "Hidden")
select trans;
Storyboard sb = (Storyboard)query.First().Storyboard;
I needed to recompile my code fast, so without thinking too much, I wrote a double foreach. Ugly too, but it worked.
And then, one beautiful morning, the SilverlightNews Twitter pointed me to an article just about that. "Great", I said to myself, "I'll see a the right way of doing that." I clicked and saw... a double foreach! I felt smart for a while, but I had a hard time believing that this way was the best. So I asked Boyfriend.
Boyfriend has a bad influence on me because he gives me way better answers than Google - and shouldn't people google instead of bothering others? This time was no different - Boyfriend wrote a single-line solution and posted it in a comment over there.
I decided to follow his advice and rewrite my code the same way. After sweat, tears and another Boyfriend bother, I got this:
Storyboard sb = VisualStateManager.No doubt it's single-line, no doubt it's shorter. Whether it's nicer, easier to write or more effective than a double foreach, we can discuss. I guess it's easy if you know Linq, which I don't. Wait, I do, I just wrote my first piece of it!
GetVisualStateGroups(n.NodeLayoutRoot).
Cast<VisualStateGroup>().
Where(sg => sg.Name == "VisibleStates").SingleOrDefault().\
Transitions.Cast<VisualTransition>().
Single(t => t.To == "Visible" && t.From == "Hidden").
Storyboard;
16 October 2008
Time to set some goals
The good lazy days of holidays are over. School has started, it's just two days a week, but with three days of work, it's hard to catch me home. And it's at least imprudent for me to stay lazy. So it's time to get organized and set some goals.
First goal, of course, it to do all the required schoolwork. That's three exams, one lab and one master paper. School... I've done that ten times already.
Second, professional goals: get my salary up and get certificates. I got a raise recently, but my work speed is still very limited by the need of learning how to do something before actually doing it. Well, it's not like in this job you get to a point where you know everything, but you do get to a point where you know the given technology, you know the available tools, you know which to choose and all that kind of stuff I often have to ask my workmates or Boyfriend.
Third, a personal goal: get rid of as much stuff as possible. I will most probably be moving out next summer and I don't want my first adult flat to be as messy over-stuffed as my room is now. In our society, everyone owns too much stuff anyway. Lifehacker has a lot of advice about that and when I started reading it, I very quickly started watching more what I buy. I want to have control over everything that enters my personal space. I can't just leave a mess at my parent's place, so a lot of things have to go. So, this morning, two dozens of magazines are gone. I also got some ideas about some other stuff.
Things are going good, and I hope it stays that way.
22 August 2008
Magazines meant for women are mean to women
Awesome thighs
This is another exercise program that will leave you disappointed. Let's be honest - you're not a very motivated and systematic person. If you were, you'd already have the thighs you want, or at least realistic views about them. But since you're reading this, you don't. This article will raise your expectations (see the model? she's trying our workout for the first time and just look at her photoshopped perfect body), but you'll give exercising up pretty soon and add this to your failure list that gets longer with every magazine issue.
Still, remember your thighs are the most important thing about you and define who you are as a person, that's why we are putting so much emphasis on them, so failing to complete this program makes you a failure.
Next issue: your butt.
No restrictions diet
Yay, eat what you want. Just do it five times a day in small portions and drink lots of water. We know we've been telling you this for 10 years, but you've probably forgotten, you dumb blonde, or you can't even stick to that, you failure.
1000 reasons to eat chocolate
Yay, eat chocolate at will! Those three celebrities do and stay thin, so you can too. Last month, we did the same about nuts (so you can eat nuts at will) and next month, we'll cover the benefits of ice-cream. Because diets should have no restrictions.
Learn a skill
When we mean skill, we mean curling your lashes, applying eyeliner, or something equally shallow. Something that might impress only your shallowest girlfriends. We'd never suggest you to learn a new language, that you could use in various occasions, add to your resume, tell a human about... no. Cause we don't believe you could do that. All the skills you can learn resolve around hair and make-up.
Get rid of cellulite
There is no such term in medicine. We don't care. It's inevitable. We don't care. If you put all the effort (and money) you're putting in eliminating poverty, the world would be such a better place. But that's not what we want you to do: we want you to think cellulite is a real problem (unlike poverty, it's affecting you!) and make you work on it as if your life (or many other lives)
depended on it. Why accomplish anything when you can fight cellulite for the rest of your life?
Best products for biggest problems
Shadows under your eyes? Problem. No time for your family? Not a problem. Rough feet? Problem. Rough character? Not a problem. Dry skin? Problem. Dry summer causing famine in Africa? Not a problem. It's all about the priorities.
Hottest clothes
Latest, hottest, best! Look how great they look on the model! Too bad you would look ridiculous in them. But turn to page X where we advise you on dressing for your silhouette and propose you something totally different.
Dating advice
Don't ask questions he doesn't like, like "how do I look in this dress?". Don't expect marriage, he doesn't want to commit to you and you'd make him feel uncomfortable. Feel uncomfortable yourself. And if you nag him about marriage too much, you'll scare him off, so don't do that if you want your relationship to work. Actually, don't talk about your needs, just the intimate ones, that turns him on.
Oh, wait, you're between guys? Don't worry, you can easily get one if you don't show a trace of dignity or respect for yourself. Just show legs, show tongue, show no sign of intelligence - and you're done! A male you deserve should be yours by now.
Wow, I got carried away. I guess it's hard to find a magazine that would be filled with both good content and pretty pictures.
10 June 2008
You know you do it too much (yet again) when...
I recently had one of these "you know you do it too much when" moments.
I wanted to call one guy form the team project about the team project. I looked for his number in my address book in my cell phone - it wasn't there, as I had never called him before. I looked on my laptop for his number, but didn't fint it. Well, the hard drive had been formated. I looked on my Nokia 770, but it wasn't there either. Well, the memory had been cleaned several times.
The conclusion was: I format my drives more often than I call people. Not good. Geek, but not good.
20 May 2008
Geek works on soft skills
I am officially job-hunting, so I have plenty of thoughts to share. Last topic was career experiments, and today's is soft skills. Yeah, I know, geeks and soft skills...
I'm not gonna get into details about times when I couldn't answer any question that wasn't perfectly precise and small talk was just a programming language for me. Let's just say I've always been a true geek.
College is a bit easier with better soft skills, but it's not really the place where you get to work with people a lot or gain a lot of charisma. Well, you can in different clubs and associations, and these are loved on resumes, but with my two majors, I don't have time for that. I am co-founder of the .net club at my Uni, but, well, actually, I am on the co-founders list and not much more.
There are however some cool career days for students and I have been to a few. My first case study happened at one of these and was a disaster. In the first part, my team didn't do the task in the given time, so we kept talking when the presentations began, which was disturbing and made a really bad impression. In the second part, the team got much better, but my role was "living calculator". I was great at this - we were faster that a team with a real calculator - but the soft skills... I did find a good way to help the team, but wasn't really in it, didn't communicate much and stuff.
A few months ago, I went to another case study organized by a consulting company. I was hesitating, but Boyfriend told me to do it, saying that I could use any experience of the kind. I didn't like it at all - all we had to do was read some text, find out the problems of an imaginary company and offer solutions. I decided to stay away from consulting (in favor of coding) and further case studies, considering that last one a waste of time.
Back to the present and the job-hunting: I'm applying for several jobs and as part of the recrutation for the first one on my list right now, I took part yesterday in something called "assessment center", which included making a business plan for a circus... in a team. As I was sitting there wondering wether five jugglers were too much - it hit me: I've done that already! Not running a circus, but teamwork: I knew what it looked like and I knew how weak I was in it, how little I took part in the discussion, how I ended up hidden in the corner,... This time was different from the previous ones when I had nothing but a few hours to loose. I wanted the job and hiding in the corner was the last thing to do. I decided to do anything not to remain unnoticed. So when I was running out of things to say, I took the initiative and started writing down the team's ideas, sorted in categories. It lead me to becoming the moderator of the discussion: since I wanted things written down, I had to know how, so I forced the team to decide on each thing before moving to the next one. Finally, I did the final presentation without almost any stage fright.
I'm really happy about that last teamwork of mine. I still have to wait a week before I know whether I got the job, but, I have gained one thing for sure: better soft skills. Additionally, I have proved that they are learnable - that's good news for all the geeks!
31 March 2008
Writing my Google SoC application, part 1
Storytime, kids. I spend most of this week preparing my application for the Google Summer of Code and will tell you a bit about it.
So, on Tuesday, I started looking at the list of organisations and their ideas (they were published on Monday). One definitely stood out for me: One Laptop Per Child. I already wrote about my enthousiasm towards this initiative a few days ago. Although some others had interesting ideas, I decided to stick with OLPC, for two reasons: first, I'm really enthousiatic for it (and would do something for them even without the SoC), and second, with 175 organisations with a dozen of ideas each, you have to narrow it down somehow.
I also registered to their wiki, did a little bit of translating - you can't reach me better than give an opportinity to help with "Only have five minutes?".
On Wednesday, I kinda picked my project. A few ideas looked interesting to me, namely some language and finance teaching software. But, some people already expressed their wish to write these things and had some ideas about it. I had no ideas and didn't really hope for suddenly having any, as I am exhausted and my creativity is dead. Plus, I decided not to get into competition, these people were there first, but to pick something else.
Then I noticed DrGeo, program that lets kids learn geometry. I loved geometry in high school, know SmallTalk and French (in which the program and the documentation are written), and there's a nice to-do list - I decided to go for DrGeo.
Okay, once the project was picked, I had to write the application, and teherefore figure out what exactly I would do. I knew I was able to do whatever was required (if I can just take the Linux kernel's sources, read them and start modyfing them - is there something I can't?), but couldn't really estimate how long each task would take (if you don't pick enough, you won't get selected, if you pick too much, you won't make it and won't ghet the cash) and still was pretty blurry about what was to be done. I e-mailed one of the authors asking for advice about it.
To be continued.
15 January 2008
You know you do it too much (again!) when...
These days, I'm only sitting at home, mainly browsing http://lxr.linux.no/linux+v2.6.17.13/ in order to find out how to write my prefetching kernel patch and typing a bit. Anyway, kernel hacking all the time.
All the time is too much. It's not right. It's not sane. And you know it when you feel the urge to try this:
/usr/bin/time halt(The first command measures how long the second one is execuded, and the second one shuts the system down.)
Here's the result:
Broadcast message from root@ubuntuWell, I guess this means /usr/bin/time behaves right when it gets a kill signal. But what does it say about my behaviour? (I don't think I wanna know...)
(/dev/pts/0) at 14:29 ...
The system is going down for halt NOW!
0.00user 0.00system 0:00.05elapsed 16%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (2major+379minor)pagefaults 0swaps
01 January 2008
New year's resolutions
I never believed in new year's resolutions. Why wait for the 1st of January when you've got a good idea about changing your life for better? Or what good ever came from the cliche resolutions like "loos weight" (but how much and how?), "exercise more" (again, how?) or "improve my English"?
Whenever I get an improvement idea, I'll make a resolution or I'll forget it forever. I wrote about reading more just a few days ago. On the other hand, I also have a "it would be great to..." list which contains for example volunteering and getting a job, which, well, would be good, but school keeps me too busy at the moment.
This year however, I've been surfing on more motivational sites and right now, there are plenty of resolution ideas running around. So most probably, I'm gonna have some 2nd or 3rd January resolutions.
I set up an account on Joe's Goals to keep track of my goals. I don't really have problems with my willpower, still writing your achievements down always helps. I used to do it on a Gnumeric spreadsheet, but Joe's Goals is nicer, simpler and goal-oriented.
So what's on my list? Eating right, ab workout and yoga. Reading a bit of a book. Socializing (cause I'm a freaky geek glued to the computer). Amazing how "socializing" and "updating the damn blog" are popular, by the way. And last but not least, my only new year's resolution so far:
Read some lyrics.I know, sounds weird. I'm a lyric-oriented songwriter and still, I don't read much lyrics. Most of the time, unless you gimme the plastic disc with the paper booklet, I will listen to a song 1000 times, get bored and never search for the lyrics. This happens to music I get from people, like the entire White Stripes discography I got from my boyfriend.
Here's another funny idea from persistenceunlimited.com:
One push-up a day.Sounds weird? "Now let me ask you question. How many push-ups did you do last year? Was it less or more than 365?" Well, in my case, it was something around 4. No that I care about push-ups when I got my dear yoga, but that's not the point. The point is that the "one a day" method can be better than many others.
I'm looking for some more resolution ideas.
01 December 2007
You know you do it too much when...
I was going to bed yesterday. My other cat, Linux, was lying on the bed. And I said to myself:
"This is Linux in guest mode and I am the host."
29 November 2007
What [not] to watch: The IT Crowd
I've never really written any reviews, but I recently started feeling the urge of expressing my opinions some place better than between hundreds of other people's comments. So I'm gonna do what I do when I wanna do something: I do it. I'm not really good at reviewing yet, but one gotta start somewhere.
So, I'm gonna start with the geekiest show ever: The IT Crowd, a Channel 4 series about two IT support guys, Moss and Roy and their new Manager, Jen, who doesn't know much about computers (but said on her CV that she had a lot of experience with them).
Left to right: Jen, Moss and Roy (Picture credit: official site).
The show is both geek and good. Geek, because it has a lot of geek humor, like Roy's T-shirts ("RTFM", "I see dumb people", "42",...) or Moss' geek behaviour ("Don't google the question, Moss!"). Good, because it has a lot of British humor (wich I love) and can be unpredictable (what is it with american sitcoms that you can tell the ending after having only watched the first half?).
Two episodes, however, have really disappointed me: "The Haunting Of Bill Crouse" and "The Work Outing". They both have this plot when one of the characters lies, then lies again (not to contradict the first lie), and again, and keeps on falling deeper and deeper. I have seen that kind of plot way too many times (which means more than once, but I'm talking a dozen here) and it's stupid and boring and unforgivable. At least, there still was a bit of geek humor not to consider the episode a total waste of time.
Anyway, the show is really worth watching, and I can't wait for the third season and the remakes (an american one and a german one have been announced - the second will be an awesome opportunity to pick up some german tech talk ).
