Fedora People

Fedora People: http://planet.fedoraproject.org

URL

XML feed
http://fedoraproject.org/people/

Last update

23 weeks 2 days ago

February 7, 2008

21:41
Dear LazyWeb, It seems like all the torrent tracker software is slowly dissolving: bittorrent: 5.2.0 is the last open source version. The new versions are closed and therefore full of doom. If anyone has forked the last open version and is working on it I’d love to know that, too. ctorrent: not obviously being maintained and not obviously designed to be a standalone tracker osprey: not been updated in quite some while. Looks cool, developed by cool people. Still - last updated in 2006 fills me with dread So what torrent trackers are all the cool kids using these days? thanks
Categories: Planet Fedora
15:17
Hey you, ya you! Do you write Bash scripts? Come here, I have a secret to tell you. Python is easy to learn, and more powerful than Bash. I wasn’t supposed to tell you this–it’s supposed to be a secret. Anything more than a few lines of Bash could be done better in Python. Python is often just as portable as Bash too. Off the top of my head, I can’t think of any *NIX operating systems, that don’t include Python. Even IRIX has Python installed. If you can write a function in Bash, or even piece together a few commands into a script and make it executable, then you can learn Python. What usually throws Bash scripters off is they see something object-oriented like this: class FancyObjectOriented(object): def __init__(self, stuff = "RegularStuff"): self.stuff = stuff def printStuff(self): print "This method prints the %s object" % self.stuff Object-oriented programming can be a real challenge to get the hang of, but fortunately in Python it is 100% optional. You don’t need to have a Computer Science degree to program in Python–you can get started immediately if you know a few shortcuts. My goal here is to show Average Joe Bash scripter how to write in Python some of the things they would normally write in Bash. Even though it seems unbelievable, you can be a beginning Python programmer, by the end of this article. Baby steps The very first thing to understand about Python, is that whitespace is significant. This can be a bit of a stumbling block for newcomers, but it will be old hat very quickly. Also, the shebang line is different than it should be in Bash: Python Shebang Line: #!/usr/bin/env python Bash Shebang Line: #!/usr/bin/env bash Knowing these two things, we can easily create the usual ‘Hello World’ program in Python, although whitespace won’t come into play just yet. Open up your favorite text editor and call the python script, hello.py, and the bash script hello.sh. Python Hello World script: #!/usr/bin/env python print "Hello World" Bash Hello World script: #!/usr/bin/env bash echo Hello World Knowing these two things, we can easily create the usual ‘Hello World’ program in Python, although whitespace won’t come into play just yet. Open up your favorite text editor and call the python script, hello.py, and the bash script hello.sh. Python Hello World script: #!/usr/bin/env python print "Hello World" Bash Hello World script: #!/usr/bin/env bash echo Hello World Make sure that you make each file executable by using chmod +x hello.py, and chmod +x hello.sh. Now if you run either script–./hello.py or ./hello.sh–you will get the obligatory “Hello World.” Toddler: System calls in Python Now that we got ‘Hello World’ out of the way, lets move on to more useful code. Typically most small Bash scripts are just a bunch of commands either chained together, or run in sequence. Because Python is also a procedural language, we can easily do the same thing. Lets take a look at a simple example. In order to take our toddler steps it is important to remember two things: 1. Whitespace is significant. Keep this in mind–I promise we will get to it. It is so important that I want to keep reminding you! 2. A module called subprocess needs to be imported to make system calls. It is very easy to import modules in Python. You just need to put this statement at the top of the script to import the module: import subprocess Lets take a look at something really easy with the subprocess module. Lets execute an ls -l of the current directory. Python ls -l command: #!/usr/bin/env python import subprocess subprocess.call("ls -l", shell=True) If you run this script it will do the exact same thing as running ls -l in Bash. Obviously writing 2 lines of Python to do one line of Bash isn’t that efficient. But let’s run a few commands in sequence, just like we would do in Bash so you can get comfortable with how a few commands run in sequence might look. In order to do that I will need to introduce two new concepts: one for Python variables and the other for lists (known as ‘arrays’ in Bash). Lets write a very simple script that gets the status of a few important items on your system. Since we can freely mix large blocks of Bash code, we don’t have to completely convert to Python just yet. We can do it in stages. We can do this by assigning Bash commands to a variable.
Note:
If you are cutting and pasting this text, you MUST preserve the whitespace. If you are using vim you can do that by using paste mode :set paste
PYTHON Python runs a sequence of system commands. #!/usr/bin/env python import subprocess #Note that Python is much more flexible with equal signs. There can be spaces around equal signs. MESSAGES = "tail /var/log/messages" SPACE = "df -h" #Places variables into a list/array cmds = [MESSAGES, SPACE] #Iterates over list, running statements for each item in the list #Note, that whitespace is absolutely critical and that a consistent indent must be maintained for the code to work properly count=0 for cmd in cmds: count+=1 print "Running Command Number %s" % count subprocess.call(cmd, shell=True) BASH Bash runs a sequence of system commands. #!/usr/bin/env bash #Create Commands SPACE=`df -h` MESSAGES=`tail /var/log/messages` #Assign to an array(list in Python) cmds=("$MESSAGES" "$SPACE") #iteration loop count=0 for cmd in "${cmds[@]}"; do count=$((count + 1)) printf "Running Command Number %s n" $count echo "$cmd" done Python is much more forgiving about the way you quote and use variables, and lets you create a much less cluttered piece of code. Childhood: Reusing code by writing functions We have seen how Python can implement system calls to run commands in sequence, just like a regular Bash script. Let’s go a little further and organize blocks of code into functions. As I mentioned earlier, Python does not require the use of classes and object-oriented programming techniques, so most of the full power of the language is still at our fingertips—even if we’re only using plain functions. Let’s write a simple function in Python and Bash and call them both in a script.
Note:
These two scripts will deliver identical output in Bash and Python, although Python handles default keyword parameters automatically in functions. With Bash, setting default parameters is much more work.
PYTHON: #!/usr/bin/env python import subprocess #Create variables out of shell commands MESSAGES = "tail /var/log/messages" SPACE = "df -h" #Places variables into a list/array cmds = [MESSAGES, SPACE] #Create a function, that takes a list parameter #Function uses default keyword parameter of cmds def runCommands(commands=cmds): #Iterates over list, running statements for each item in the list count=0 for cmd in cmds: count+=1 print "Running Command Number %s" % count subprocess.call(cmd, shell=True) #Function is called runCommands() BASH: #!/usr/bin/env bash #Create variables out of shell commands SPACE=`df -h` MESSAGES=`tail /var/log/messages` LS=`ls -l` #Assign to an array(list in Python) cmds=("$MESSAGES" "$SPACE") function runCommands () { count=0 for cmd in "${cmds[@]}"; do count=$((count + 1)) printf "Running Command Number %s n" $count echo "$cmd" done } #Run function runCommands Teenager: Making reusable command-line tools Now that you have the ability to translate simple Bash scripts and functions into Python, let’s get away from the nonsensical scripts and actually write something useful. Python has a massive standard library that can be used by simple importing modules. For this example we are going to create a robust command-line tool with the standard library of Python, by importing the subprocess and optparse modules. You can later use this example as a template to build your own tools that combine snippits of Bash inside of the more powerful Python. This is a great way to use your current knowledge to slowly migrate to Python. Embedding Bash to make Python command-line tools: #!/usr/bin/env python import subprocess import optparse import re #Create variables out of shell commands #Note triple quotes can embed Bash #You could add another bash command here #HOLDING_SPOT="""fake_command""" #Determines Home Directory Usage in Gigs HOMEDIR_USAGE = """ du -sh $HOME | cut -f1 """ #Determines IP Address IPADDR = """ /sbin/ifconfig -a | awk '/(cast)/ { print $2 }' | cut -d':' -f2 | head -1 """ #This function takes Bash commands and returns them def runBash(cmd): p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE) out = p.stdout.read().strip() return out #This is the stdout from the shell command VERBOSE=False #Function to run embedded Bash commands def report(output,cmdtype="UNIX COMMAND:"): #Notice the global statement allows input from outside of function global VERBOSE if VERBOSE: print "%s: %s" % (cmdtype, output) else: print output #Function to control option parsing in Python def controller(): global VERBOSE #Create instance of OptionParser Module, included in Standard Library p = optparse.OptionParser(description='A unix toolbox', prog='py4sa', version='py4sa 0.1', usage= '%prog [option]') p.add_option('--ip','-i', action="store_true", help='gets current IP Address') p.add_option('--usage', '-u', action="store_true", help='gets disk usage of homedir') p.add_option('--verbose', '-v', action = 'store_true', help='prints verbosely', default=False) #Option Handling passes correct parameter to runBash options, arguments = p.parse_args() if options.verbose: VERBOSE=True if options.ip: value = runBash(IPADDR) report(value,"IPADDR") elif options.usage: value = runBash(HOMEDIR_USAGE) report(value, "HOMEDIR_USAGE") else: p.print_help() #Runs all the functions def main(): controller() #This idiom means the below code only runs when executed from command line if __name__ == '__main__': main() Python’s secret sysadmin weapon: IPython The skeptics in the Bash crowd are just about to say, “Python is pretty cool, but it isn’t interactive like Bash.” Actually, this is not true. One of the best kept secrets of the Python world is IPython. I asked the creator of IPython, Fernando Perez, how IPython stacks up to classic Unix interactive shells. Rather than trying to replicate what he said, I’ll simply quote directly: IPython is a replacement for the Python interactive environment that tries to incorporate the most common shell-like usage patterns in a natural way, while keeping 100% syntactic compatibility with the Python language itself. In IPython, commands like ‘cd’ or ‘ls’ do what you’d expect of them, while still allowing you to type normal Python code. And since IPython is highly customizable, it ships with a special mode that activates even more defaults for shell-like behavior. IPython custom modes are called profiles, and the shell profile can be requested via: ipython -p sh This will enable all the shell-like features by default. The links below show some basic information about the shell-like usage of IPython, though we still lack a comprehensive guide for all of the features that actually exist under the hood. http://ipython.scipy.org/moin/Cookbook/IpythonShell http://ipython.scipy.org/moin/Cookbook/JobControl IPython also contains a set of extensions for interactively connecting and manipulating tabular data, called ‘ipipe,’ that enables a lot of sophisticated exploration of filesystem objects and environment variables. More information about ipipe can be found here: http://ipython.scipy.org/moin/UsingIPipe It is quite possible to use IPython as the only interactive shell for simple systems administration tasks. I recently wrote an article for IBM Developerworks, in which I demonstrated using IPython to perform interactive SNMP queries using Net-SNMP with Python bindings: Summary Even if you can barely string together a few statements in Bash, with a little work you can learn Python and be productive very quickly. Your existing Bash skills can be slowly converted to Python skills. And before you know it, you will be a full-fledged Python programmer. I find Python easier to program in than Bash; you don’t have to deal with hordes of escaping scenarios, for one. Bash has its place–usually when you don’t have the ability to run Python–as Python beats the pants off Bash as a scripting language. I have included a link to all of the examples, and will have a souped-up version of the Python command-line tool with a few extra tricks sometime soon. Let me close with saying that if you are interested in replacing Bash with Python, try to start out on the best possible foot and write tests that validate what you think you wrote actually works. This is a huge leap in thinking, but it can propel your code and productivity to the next level. The easiest way to get started with testing in Python is to use doctests, and I have enclosed a link at the bottom of this article. Good luck! References About the author Noah Gift is currently co-authoring a book for O’Reilly, “Python For *Nix Systems Administration,” (working title) due sometime in 2008. He works as a software engineer for Racemi, dealing with Bash, Python, SNMP and a slew of *nix operating systems, including AIX, HP-UX, Solaris, Irix, Red Hat, Ubuntu, Free BSD, OS X, and anything else that has a shell. He is giving a talk at PyCon 2008–the annual Python Programming convention being held in Chicago–on writing *nix command line tools in Python. When not sitting in front of a terminal, you might find him on a 20 mile run on a Sunday afternoon.
Categories: Planet Fedora
13:50
La sortie de Fedora 9 Alpha fut pour moi l'occasion de me plonger dans Inkscape. J'ai donc pris les design de Mairin pour la promotion de cette version alpha, et je les ai retouché un poil. En effet, comme elle les a fait avec une version de développement d'Inkscape, et que je suis un garçon bien sage qui ne fait que très peu de hors piste, tous les éléments ne s'affichaient pas chez moi. Mais bon, voici le résultat. Rien d'extraordinaire diront les experts. Il n'y avait que le texte à traduire pour la première bannière. Quant à la seconde, l'effet de flou n'était pas appliqué sur la lueur des cristaux de sulphur, ni sur la  lueur générale (dans les tons bleus). Le flou autour du 9 n'était pas non plus appliqué, et le reflet des cristaux de droite n'était pas là du tout.
Categories: Planet Fedora
13:36
glusterfs 13T 371G 13T 3% /mnt/vf01 glusterfs 13T 379G 13T 3% /mnt/vf02 Bring it on!
Categories: Planet Fedora
13:16
Linus picked up a bunch of the cpufreq patches I had pending today. Nothing really amazing. Several of them that I had initially queued up for this window got dropped due to regressions, or other forms of failure. Andrew beat me up a little earlier this week for merging a diff that was untested (it spat out an easily-fixed compilation warning), so I spent some time rejigging my merge scripts.Now, before I merge patches, they have to survive a modular and an allyesconfig build on both x86 and x86-64, and also be clean of checkpatch warnings.I fear that the initial pain barrier of getting submitters to conform with this may involve lots of hair-tearing, but hopefully it'll pay off in the long run. (One problem we've had with cpufreq submitters in the past is that when asked to resubmit with (for eg) damaged white-space fixed up, the submitters never resubmitted, requiring me to fix it up myself).cpufreq also seems to be not getting so much attention these days. For sure there's still a bunch of work that needs doing on it, but there's probably 2-3 regular hackers posting patches, and an occasional handful of janitorial hacks sent once per merge window. My own contributions to the code have dropped off somewhat over the last year too, which is something I hope to address soon.Another problem seems to be that cpufreq is frequently being fingered as responsible for bugs in the last few kernel versions, even when nothing has changed in the code in question. Given the extensive reworking the timer code has undergone in the last few months, I suspect some of the oddball bugs may be a bad interaction, but tracking down such bugs is something of a nightmare. Some drivers are also getting increasingly dependant upon the ACPI doing the right thing. A regression in the interpretation of an ACPI table means a broken cpufreq driver, yet it's not always obvious what is going on.
Categories: Planet Fedora
12:00
Web 2.0 is about people. Its a global party where human beings exchange knowledge, experiences, information and even emotions. Yesterday I saw the Xanadu movie again with ELO’s All Over the World, a good-vibe song from the 80’s that still has very current lyrics that explain what people are doing in our 2008’s Web 2.0. Check out the movie excerpt with the song and the lyrics. Everybody all around the worldGotta tell you what I just heardThere’s gonna be a party all over the world I got a message on the radioBut where it came from I don’t really knowAnd I heard these voices calling all over the world All over the world,Everybody got the wordEverybody everywhere is gonna feel tonight Everybody walkin’ down the streetEverybody movin’ to the beatThey’re gonna get hot down in the U.S.A.(New York, Detroit, L.A.) We’re gonna take a trip across the seaEverybody come along with meWe’re gonna hit the night down in gay Pareee All over the world,Everybody got the wordEverybody everywhere is gonna feel tonight London, Hamburg, Paris, Rome, Rio, Hong Kong, TokyoL.A., New York, Amsterdam, Monte Carlo, Shard End andAll over the world,Everybody got the wordEverybody everywhere is gonna feel tonight Everybody all around the worldGotta tell you what I just heardEverybody walkin’ down the streetI know a place where we all can meetEverybody gonna have a good timeEverybody will shine till the daylight All over the world,Everybody got the wordEverybody everywhere is gonna feel tonight All over the worldEverybody got the wordAll over the worldEverybody got the wordAll over the worldEverybody got the word Permalink | comments | + del.icio.us | reactions by Technorati Filled under Music & Podcasts, Web 2.0. © Avi for Avi Alkalay, 2008.
Categories: Planet Fedora
11:53
The latest and greatest Rawhide of Fedora has been put into an Alpha Release.  I downloaded both the LiveCD and the DVD isos yesterday, which took 15+ hours. Just a reminder that Alpha means its not ready for your production box, so test it extensively and give feedback.  When the Beta comes out in March, I plan to move my lappy over.  Until then, I’ll just keep testing. You can get yours from: http://mirrors.fedoraproject.org/publiclist/Fedora/9-Alpha/ A list of the upcoming features for Fedora 9 are available here: http://fedoraproject.org/wiki/Releases/9/ Cheers, Clint
Categories: Planet Fedora
09:20
On Tuesday I went and saw Persepolis. I found the medium very effective for conveying the emotions in the story. My French is quite poor so I read the sub-titles, but it was fun picking up on the audio where I could. My knowledge of 1980s Iran isn’t great, but Behdad told me that the movie is largely historically accurate. I wasn’t aware of the graphic novels, but I may pick them up now that I’ve seen the movie. I highly recommend going to see it if you can.
Categories: Planet Fedora
08:37
Reading gdb backtraces from Gtk+ applications can be a pain, as the signal emissions tend make them very long and hard to read. Today i wrote a small application that compresses signal emissions and some other common gnome stuff in gdb backtraces. For example, take this 147 frames long backtrace i’m currently working on. Its pretty much a pain to read. With my app it turns into this instead, which is much nicer. Here are some examples: #7 ... segfault caught by bug-buddy #8 () #9 __kernel_vsyscall () #36 gtk_scrolled_window_destroy (object=0x82bc538) at gtkscrolledwindow.c:799 ... #43 gtk_object_dispose (gobject=0x82bc538) at gtkobject.c:418 #44 gtk_widget_dispose (object=0x82bc538) at gtkwidget.c:7851 #45 fm_tree_view_dispose (object=0x82bc538) at fm-tree-view.c:1457 #115 gtk_object_destroy (object=0x82d0200) at gtkobject.c:403 #120 ... emitting signal 219 on instance 0x5954 #121 _gtk_action_emit_activate (action=0x82c8e60) at gtkaction.c:872 #130 gtk_window_key_press_event (widget=0x82d0200, event=0x83716e8) at gtkwindow.c:4961 #140 ... dispatching GdkEvent 0x83716e8 to widget 0x82d0200 #141 g_main_context_dispatch (context=0x819fca0) at gmain.c:2064 Any chance something like this could be integrated with bugzilla?
Categories: Planet Fedora
08:26
We've been working on a few new goodies for when partitioning your disks at install-time for Fedora 9. The first one, which I've previously mentioned, is support for resizing filesystems at install-time. The second one is a bunch of work from dlehman to support installing to encrypted devices (including your root device). I've now managed to get both of these hooked up to be easily usable for those who don't want to do manual partitioning. And once again, I think I'll let the movie do the talking...Ogg Theora Screencast of resizing + encryption during auto-partitioningThis should help a bit with those users who are new to Fedora (or Linux in general) and want to do an install on their machine. And actually, even help those who aren't so new but just got a new machine.
Categories: Planet Fedora
08:17
An entire night dedicated to Fedora next February, 19th! The event is organized in collaboration with LOLUG (Lodi Linux User Group). After a short introduction about Fedora, we’re going to talk about:
  • How does fedora live? The community behind fedora
  • How does fedora work? Building Processes and Tools to deploy and deliver fedora
Here you are some links to obtain more information about where and where: http://fedoraproject.org/wiki/FedoraEvents/FedoraByNight http://www.lodi.linux.it/ Enjoy!
Categories: Planet Fedora
04:48
Imagine getting the following error message:Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in /home/icon/test.php on line 9This is not a fluke, it's actually defined in the standard PHP tokens. :)PS: I may sound amused, but I'm really not.PPS: This happens, for example, when you're trying to access a static method of a class using $this::methodName().PPPS: Seriously, wtf?
Categories: Planet Fedora
01:18
I defend it to the death. But sometimes I feel like an apologist. There is simply *no way* any sane person out there can be using Evolution with LDAP contacts and not want to kill himself or herself on a regular basis. It was bad enough when I had only one LDAP backend. Hangs in the Evolution UI while it was asking the evolution-data-server through bonobo for contacts, and just freezing everything (What good is moving stuff out-of-process if you actually block completely waiting for a reply ?) I think I killed evolution-data-server four times daily just to unfreeze the UI, losing of course the autocompletion that makes having your contacts LDAP useful in the first place. Now that I finally decided I’ve had enough of having 3 copies of my personal contacts across my various machines, I moved all of them to a different LDAP server as well. Now the autocompletion makes Evolution freeze pretty much every time. Looking at the backtraces it looks like there is a *global* lock for all LDAP functionality, so if one server has a problem everything stops working. And the LDAP servers don’t even have a problem, so I don’t know what’s going on. I’m afraid I’ll actually have to try and build Evolution myself and fix stuff, which can only go wrong. Side note - in the process of trying to move my contacts from my work machine to the new LDAP, halfway through the process I pressed delete when I thought I had a contact focused, but I had the address book focused. Oops. Then I moved through my laptop contacts, and I managed to do it again. Oops. The other two machines that have contacts are either without power supply or locked up in a garage in Brussels. Oops. But hey ! If YOU use Evolution with LDAP contact backends, please let me know if it’s working out for you! I want to get this Stuff To Work.
Categories: Planet Fedora

February 6, 2008

23:02
With regards to a question in FWN issue 117Prayer Time for FedoraRiam budhi: I wanted to ask you, where is I can download prayer time ( I am muslim)?---Unfortunately, this software isn't available in the Fedora repository yet and I couldn't locate any good alternatives. This is now a opportunity for you to be a contributor to Fedora and maintain the software in the Fedora repository. I've packaged the Islamic Tools & Library and Minbar. They are waiting for review currently.libitl: #431181itools: #431186minbar: #431188 - Izhar Firdaus -
Categories: Planet Fedora
22:41
With regards to a question in FWN issue 117Prayer Time for FedoraRiam budhi: I wanted to ask you, where is I can download prayer time ( I am muslim)?---Unfortunately, this software isn't available in the Fedora repository yet and I couldn't locate any good alternatives. This is now a opportunity for you to be a contributor to Fedora and maintain the software in the Fedora repository. I've packaged the Islamic Tools & Library and Minbar. They are waiting for review currently.libitl: #431181itools: #431186minbar: #431188- Izhar Firdaus -
Categories: Planet Fedora
22:25
Some days it is better to roll over and pretend morning never happened. For more reasons than I can possibly explain today was one of those days. I’m sorry to anyone I was grumpy with.
Categories: Planet Fedora
22:13
So I went to see the periodontist today to essential give my gums a facelift.Partly because my wisdom teeth came in so..interestingly.. and made it hard to clean.And partly because going to dentist for regularly scheduled cleanings was consistently lower on my priority list than curling up in a fetal position and having a panic attack over how my research was going....I had developed some small pockets of infection below the gum line, eating away bone, and too deep to keep clean with regular care. The dentist can do some aggressive cleaning of the pockets, but you can't keep them cleaned out. In order to stop the progression of the bone loss, the solution is to reset the gum line. The gum is cut and pulled back exposing the affected area so that it can be reached for cleaning.The bone loss i've already sustained is permanent, but the roots of the tooth affects are literally about 3.2 miles long, My gum was reset about 5 millimeters. I'm in no danger of having my teeth fall out, but is one of those things where once you find out about it, you might as well take care of it while its relatively easy to take care off.All this is a preamble to the essentially truth that I learned today: Band-aids affixed over your molars taste HORRIBLE. I can't identify it, but it isn't pleasant. You'd think they'd make these things minty.-jef
Categories: Planet Fedora
21:53
152 proposals now, which is looking a bit more realistic than it was a week ago.The call for papers deadline also got extended until the 15th, so there's still time for more submissions.As usual, an impressive number of kernel related talks dominates the submissions, but there's a handful of userspace talks too.I typically score the userspace talks a little higher just to add something a little 'alternative' to the mix, to try and balance stuff out a bit, but even if we accepted all the userspace talks, there'd probably still be a 10:1 ratio of kernel:userspace submissions.All the usual suspects are starting to trickle in. The 'state of the union' type things for various projects, the mandatory kprobes, containers and virtualisation talks, and a bunch of 'shiny new hardware feature support' type talks. Outside of that, a surprising number of security related talks proposed this year, which will probably result in a security 'track' happening.I'm curious what regular attendees of OLS think about the recurring 'every year' talks.Too much? Or a mainstay that should be kept?
Categories: Planet Fedora
21:07
  • Meeting a friend today who will be in town. Sayamindu has a really good talk lined up for the Day 1 of the event so don’t be disappointed with the bland title and do attend if you want to get to a real-deal developer in the Project. If you are coming to the event, I’d say make some time to talk with him. It would have been nice to have him talk at Fosskriti as well doing his bit for GNOME
  • Arun has posted a bit about the event at his place and there is some GNOME hotness being drummed up.
  • It is a bit odd to post about the week on a Thursday but hey it has been fairly productive. Finally went through all the technology papers which had been piling up for a while, did a bit of non-technology reading and in general ensured that the ToDo list is in far better shape than it was from 3 weeks back.
  • If you haven’t already done so, do check out the OLPC presentation (~14 MB PDF) and the one talking about Translating for the XO using Pootle.
  • I still need to work on mails that have been sitting not-so-quietly in Drafts. So, if you are expecting a reply, bear with me a for a little duration and I’ll eventually get back to you.
  • Michael writes about the IBM Lotus Workplace code in OO.o CVS.
  • The Education Project for OO.o has a blog.
Categories: Planet Fedora
20:58
Two days of classes down while getting work done at the same time. On the class side, I've now had the first classes of Thesis Seminar, ERBA and PDD. Thesis seminar is pretty much what I expected -- an effort for you to get to know some professors and start coming up with ideas for the thesis. ERBA was this morning and seems like it's going to be a fun class. I was sitting there today and thinking "ooh, discrete math, whee!" and I also think some of the examples should be interesting. PDD was this afternoon and seems like it should be pretty good, too. Having some more rigorous background in how to do "traditional" engineering should help a lot when working with people for whom that's their background. Also, there are times when a more rigorous approach than we tend to use in the open source world could be truly beneficial. All that said, I'm also planning to have my project for the course not be software based -- I think that'll help me to avoid some bad assumptions from the beginning.The balance side of things is balancing going to classes (and the work to be done for the classes) with actually getting things done for work. Thus far, that's going pretty well. Yesterday was very productive and today isn't ending up being too bad. Made some good progress yesterday on some anaconda stuff and today is more getting some things fixed up in livecd-tools so that I can push the new version into rawhide. Stay tuned for a neat screencast soon with one of the anaconda changes...
Categories: Planet Fedora