May 09, 2008
John Bintz
Not since LGM2 have I put a video up on YouTube — I was just waiting for a good one to post, that’s all, and here it is!
Myself, Rafer Roberts, and Rebecca Simms (and Evan Keeling, but I left before he arrived) were all at Beyond Comics in Frederick for Free Comic Book Day. For the two or so hours I was up there it was pretty sweet. I gave away a lot of minicomics, and I know the other DCC members did well for themselves. I also had the opportunity to talk with the very cool owner of Beyond Comics, Jon Cohen. Watch and enjoy.
Thanks to Alex for running the videocamera, and, of course, the entire movie (except for the music which was from Garageband) was edited using Open Source software.
May 09, 2008 09:46 PM
Gail Carmichael
I guess you could say there's a reason I didn't post anything about my mini-course for days two through four. That reason is quite simple: I was too tired and had too little time to write whilst preparing my slides for the next day! I guess this is what happens when you prepare a course for the first time - I'm sure next year will be easier... right? Right?? :)
In all seriousness, though, I am so happy with how the week went that I can hardly put it into words. So I'll begin with a summary of what we did after day one, and end with an attempt to capture my feelings as they are just two hours after it all ended.
On Tuesday, we kicked things off with some material on game design. I wanted to squeeze a bit of that in before we started working on our own games in the lab, but also wanted to give as much lab time as possible, so I only did an hour's worth of lecturing before moving on. In the afternoon we were back in the classroom, and covered topics of usability, using principles from Donald Norman's Design of Everyday Things
. I used CS Unplugged's Chocolate Factory activity to get the girls thinking about issues of design.
I spent some time on Wednesday morning talking about computer graphics. This was a tricky one, since the theory behind it is pretty complicated. I wanted it to be mostly understandable, yet deep enough to make the class feel like they actually learned something. So I didn't spend much time on it, but gave a flavour of what vector and raster graphics were, as well as what some of the topics of 3D graphics would be. I even showed that first movie made in Blender, Elephant's Dream. I capped off the morning with the rest of my game design material, and we spent the afternoon in the lab again.
For both Thursday and Friday mornings, we worked in the lab finishing up our games. I covered some basic artificial intelligence on Thursday afternoon, talking mainly about finite state machines and the Turing test (again using two activities from CS Unplugged). I particularly enjoyed the discussion we had about AI, since the class had an unusually good insight into how computers worked and what they were capable of. They understood inherently that computers essentially stored information and could maybe deduce new things from it, but that they couldn't do anything we didn't tell it to do (I did tell them a bit about neural nets, which seem to be more like learning, but not so much in the sense we humans do).
Finally, we grouped a couple of the games classes together Friday afternoon and tried out each others' creations. I think the boys were definitely impressed with what we were able to do.
I kind of already mentioned one of the reasons that I am so happy about this course, and that is the awesome discussions we were able to have. These girls are so smart! What's more is that they looked genuinely interested, not just while in the lab, but in the classroom as well. When I asked if anyone was interested in trying computer science out in high school, they pretty much all said yes! Wow! I thought if I had made even one or two interested, then I would have succeeded in my mission. I really hope they can find joy in the subject as they get older, because I can tell you right now, they have HUGE potential.
So that about sums up my very first experience teaching a real class. I hope this is just the beginning! Watch this space for some more info about my course notes. I may post them for all to see, and if so, I'll link to them here.
May 09, 2008 05:18 PM
Jon Phillips
May 08, 2008
Ryan Lerch
Niko Kiirala
The Libre Graphics Meeting 2008 has now begun and I'm here. I arrived yesterday and it's been a bit of a crash course to life in Poland. Stuffed buses, not having a common language with shop clerks, trying to find a place where to eat and all that. But I am now here at the conference hall and I've already have met several interesting people and heard of some completely new projects.
For these
May 08, 2008 09:27 AM
John Bintz
I’m joining the party…

I was also going to draw my older self, but then I got lazy.
May 08, 2008 01:57 AM
May 06, 2008
Niko Kiirala
This week I bought two new peripherials for my computer: an USB 2.0 controller card and a sound card. Before you ask, yes, neither of those are integrated on the motherboard. Originally it wasn't a desktop machine but a server.
The first problem I encountered was when I tried to insert the A-Link U2P4 USB 2.0 controller in a PCI slot. It just didn't fit. The PCI connector on the controller had
May 06, 2008 11:30 PM
Jos Hirth

- There shall be structure.
Benefits
Hierarchical structures are always rather hard to explain with words alone. You've to identify the key items and then lay out their relation to each other - two at a time. This can take a couple of sentences and you'll also have to carefully check if everything is at the right place.
But it doesn't stop there. The worst part is probably that every user will have to parse your explanation very carefully. Of course that only adds a few seconds to the whole process, but those seconds accumulate. Your thousands (or even millions) of users might have done something more important during that time. They could have picked their nose for example, which is an activity many people enjoy more than reading documentation.
Yes, it's true. Reading documentation is really that exciting. So, we really should try everything possible to make it as quick and pain free as possible.
read more
May 06, 2008 04:41 AM
May 05, 2008
Gail Carmichael
Phew!
Yesterday was the official orientation session, where we showed students and their parents around to the classroom and game lab, and today was the first actual day of classes. I think both went well!
At orientation, the parents seemed quite enthusiastic. The girls were quieter, but eventually asked lots of questions, which I thought was a good sign. They wanted to know how much time we were going to spend in the lab, how we were going to make the games, and what I meant by "you don't need to code."
The first student arrived to class shortly after I did (20 minutes early!). After I set up my laptop with the projector, I played a movie from the Good Game show, just for something to do before everyone arrived. I found that the projector played movies ok on the default settings, but that my slides looked pretty bad. I actually went into my video card's colour settings and brought down the brightness so my slides looked good, but then videos got worse. Can't win them all.
Once everyone had arrived, I dove right into my introduction slides. I talked about who I was, and asked them to interview each other to see where they were from and why they signed up for the course (they either said it was because it looked "cool" or because they wanted to know how video games or computers worked).
We talked about what computer science in general was, including the many other areas of interest it could be combined with (like psychology, biology, mathematics, and so on). There was a brief definition / introduction to games, and then a quick idea of how (in my opinion at least) the two were well related.
The next major section was to talk about women in computing. I particularly enjoyed this topic because they girls were really tuned in on the issues. They brought up ideas and suggestions on why few females get into the field, and how to fix it, that showed a lot of insight, and even agreed with the literature. When I had them read pieces of articles, then discuss their pieces with the rest of the readers of the same article, they seemed to have interested looks on their faces. They did an awesome job relaying the main points of the content they read to the rest of the class. Definitely a smart bunch!
Finally, in the afternoon, we went to the game development lab and went through some tutorials on GameMaker. Everyone just worked at their own pace, and when they were done the tutorial, they played around with their own ideas. From what I could tell, we should be getting some really good games out of them by the end of the week!
So that was my first day's experience of my very first time teaching a real class. I think the only thing I really need to improve is my knowledge of GameMaker for tomorrow's lab time. Speaking of which, gotta go finish up that tutorial I started a moment ago...
May 05, 2008 04:26 PM
May 03, 2008
Jon Phillips
For anyone trying to offset your carbon footprint: Get a shovel, dig a hole, and bury yourself. I’ll take volunteers to do this first and I will document the whole process from start to near finish.
May 03, 2008 05:12 PM
AhhhhhhhhhhhhhhhhhHHHHHHHHHhhhhhh! Our time in Guangzhou is nearing an end for this spell. I have not adequately covered what Lu and I have been up to. Here are some immediate photos taken of Guangzhou which illustrate the dynamism of where we live right now.
Photos below by Lu Fang under CC BY-NC-SA 2.0


We discovered this village a couple of blocks from our house was being destroyed to make way for new housing and skyscrapers which you’ll see at the end of this.


Also, a few of my colleagues will be happy to note that a W hotel and Ritz-Carlton are being built on these grounds — ironies abound. The other day as well, helped my wife’s parents plant some plants. They wanted me to help dig out this huge *rock* in the ground. That rock happened to be a big multi-colored chunk of rubble from the village that lays under where we live — some kind of rock!
I need to get into photo dumping online. What is the linux workflow that others use to get photos from camera, to desktop, to flickr, Internet Archive, etc? I just took a hard look at just uploading all my photos to Internet Archive, but the interfaces are not there for photo fun nor conversion to other formats, and the biggest part is lack of active community. Any thoughts?
May 03, 2008 06:17 AM
Lu’s grandpa, Agong, who is 97 years young, asked me why the American elections take so long. This is a daily occurrence here in Guangzhou, especially in the south of china, as many are convinced that some form of democracy or rule by the people is coming. It is just a matter of time. This is one of the unwritten rules of China: the farther you get from the capital, the more people speak their minds. You could also say the further people get away from Beijing, the more lawlessness, but that is another story altogether
(I would also say the other unwritten rule is that as long as you phrase anything in terms of business, you are better off with the government. So instead of addressing problems with GFW in terms of censorship of free speech, address it in terms of increased transactions costs and bad business — in what business is getting 70% of your order ever okay?)
Anyway, I didn’t have a great answer to Agong this time, and conceded that this battle between Obama and Clinton has gone on way too long. Look at the intrade charts! Come on!
2008 US Presidential Elections



Source: Dynamic, compound prediction market charts from InTrade
-
-
2008 US Presidential Election Winner - Individual
And, while yes, I agree that Obama is elitist, my daily read of the commercially focused American media is compared against the intrade charts.
SO, at the end of the day I told Agong, “Obama has already won the democratic nominee and the presidential race is a lot closer.” Of course, something abominable could happen to derail this prediction market, but it is super crucial to get Hillary out of the race now and focus all conceptual and ideological nukes onto McCain. Geez, does McCain represent you? Obama! Obama! Temporary Dictator is the best of the worst as I’ve previously pushed
At least there is some feeling that the common persons efforts are connected to the presidential selection compared to selection of the temporary dictator in China. So with that being said, that is the most nationalism you are going to see out of me, quite unlike the red-guard-like red nationalism inside of China directed at CNN and French-connected Carrefour.
May 03, 2008 06:01 AM
May 02, 2008
Niko Kiirala
This is part of my filter effects tutorial series.
Composite is, as the name states, an effect that can composite images together. It uses the Porter-Duff blending modes named after the writers of the paper, where it was published. For those of you with ACM Digital Library access, here's a link to the original paper: Compositing Digital Images: Porter, Duff.
The Porter-Duff blending modes are
May 02, 2008 01:05 PM
Jon Phillips

Jose speaking about Knowledge Hub at the Open Ed conference in Dalian, China, Photo by Tom Caswell
I just arrived back home in Guangzhou, China from the OpenCourseWare Conference in Dalian, China last weekend and met many great people (but don’t have the tolerance to write out the contents of my thoughts ;), had many fruitful discussions, and rocked out a good slide deck for ccLearn (and you!). Check out my presentation (or any of my presentations and here), “OER XinXai (NOW!)“:
The most fruitful part of the conference for me was interacting with Philip Schmidt, Victor from Hewlett Foundation, Chunyan Wang from CC Mainland China, and Stewart Cheifet from Internet Archive. Also, hearing about sustain-o-bility in all its forms as a major consideration for projects, and mentions of CC+, made me quite happy. It also served as a nice place to test out my Mandarin skills for the good or worse of things. Hopefully at the next conference there will be more time for discussion during the conference days.
I jumped up on stage to give a final call for participation to the ccLearn and OER regional meeting at iSummit July 29 - August 1 in order to increase participation by principals in the region. Let’s hope it worked!
After this conference, I directly headed to Beijing where I worked with CC Mainland China team on accelerating business development and assessing great projects which would be great to integrate Creative Commons licensing. If you have an organization in China or any jurisdiction and want to help in this process, check out the page CC Web Integration.
The next stop for me is to head to celebrate Lu’s 27th birthday on May 4th, then onto Japan to meet up Joi, Catharina, Fumi and more (ken!). Then back to Guangzhou, Beijing, then back to Guangzhou, then back in San Francisco May 21 through at least end of July as homebase. Cheers!
May 02, 2008 08:56 AM
Ryan Lerch
May 01, 2008
Inkscape Tutorials
Ryan Lerch
April 30, 2008
Jon Cruz
For some time I have been wanting to help with tablet support in Inkscape. Things have finally come together enough for me to get started. We've had at least one RFE on this for a while (bug #171265)

The first step of this is in, and now has a preference setting to enable switching the Inkscape tool as different devices are used on the tablet (pen tip, eraser, mouse, etc.)
The implementation will probably need a bit of testing and refinement, but it should be ready for users to check out. The coding is not that difficult; most of the real effort is with figuring out the behavior that needs to happen.
At the moment the tool switched to is always the same for the same tool, but very shortly it will remember the last tool used. In the long run I'll probably be replacing our use of GdkInputDialog to provide easier configuration.
However, the main thing missing is how different tablet setups are configured. Multiple pens, multiple tablets, non-Wacom tablets, etc. That's where feedback from end-users and testers really comes in handy.
April 30, 2008 10:43 PM
Here it is...

The first part of the code for my new "eraser tool" for Inkscape is in trunk now. I've been working on the use cases probably more than the code even. However this is now a starting point for people to look at and start complaining. :-)
This first part only adds in the functionality to cut away parts of objects you have selected. It won't do anything if you don't have something selected, and it won't do anything if the first mode is selected (the sub-toolbar has toggles for the two modes). However it does commit all the infrastructure changes including the new icons, new drawing context, verbs, switching, etc. I had been wanting to get that in first to shake down bugs in that support work.
Moving forward I'll implement the "touch-delete" mode, and support for working when no selection is made. Probably a few more enhancements will come in as people try it out and give some feedback. I'm most excited about the pending "touch-delete", since it has a feel that strikes me as very "vector" and can differentiate the usage from raster drawing packages.
April 30, 2008 10:43 PM
John Bintz
A faster Paint Bucket in Inkscape means that I make my comics faster, which means I can finish “Candynomics” before I turn 30. The first version of Paint Bucket was pretty much just a proof-of-concept, and was very slow (but faster than the alternative of coloring using the Pen tool, which drove me batty). The second version got a little more clever at analyzing the area to be painted, which brought out a modest speed improvement. For the most recent change, which involved hooking deeper into the potrace bitmap tracing engine, I used Valgrind and KCachegrind to analyze all the steps of a fill operation and to find any potential bottlenecks.
Inkscape uses libgc to handle garbage collection, which is a good thing, except for when you want to profile Inkscape using Valgrind. Valgrind and libgc don’t get along too well, but luckily you can disable the use of libgc in Inkscape with an environment variable.
Additionally, profiling all of Inkscape in Valgrind, and more specifically callgrind, is an excruciating process. Valgrind allows you to disable instrumentation — the gathering of function call statistics, a very slow operation — at the start of the application’s execution, and then turn instrumentation on later in the life of the application, say when you’re about to paint an area of the drawing.
To profile a development build of Inkscape with Valgrind, with instrumentation disabled by default, cd to your build directory and execute the following from a bash shell:
_INKSCAPE_GC=disable valgrind --tool=callgrind --instr-atstart=no src/inkscape
Inkscape will start up…very, very slowly. When you’re ready to profile, run in another shell:
callgrind_control -i on
And callgrind will start recording function calls. Perform the operations you want to profile (the more the better if your machine is fast enough — I performed about 3-4 bucket fills in my testing, which was enough for this purpose), then in your second shell:
callgrind_control -i off
You can kill the valgrind process with [Ctrl]-C once callgrind_control reports that instrumentation is off.
When you’re done profiling, you’ll get a callgrind.out file in the build directory, with a number at the end that is the PID of the valgrind/inkscape process. Move this file somewhere else (I like ~/Desktop) and fire up KCachegrind.
I’ve done a lot of profiling of PHP applications (using Xdebug, a very very useful PHP extension), but essentially nothing of desktop applications. Luckily, the same general process applies to desktop apps:
- Sort functions by number of calls. See if any function is being called more than it should be.
- Sort functions by call time. See if any function is taking a very very long time.
- Check the call graph of the bigger functions. Look for anything suspicious.
- Tackle the biggest offenders first. Don’t waste time squeezing an extra 1% out of the app if it takes you 20 hours to get it (unless you really want to
)
In my case, #3 was what tipped me off to what was going on: after calling Inkscape’s potrace engine to trace the fill bitmap, the engine was calling a function called filter() which seemed to be taking a while to execute. I took a look at what was going on, and saw that filter() was generating a grayscale version of the bitmap fill to be traced, and then passing this along to the tracing engine.
The filter that was being applied was geared more toward generic image filtering, where the input could be anything. My input from Paint Bucket is quite specific, so I decided to try an end-run around the filtering system. After about 20 minutes of refactoring and new coding, I re-ran Inkscape in Valgrind, did some fills, and after comparing the costs of the removed filter function and the new costs of my own filtering, the process was faster!
So in conclusion: if you have spots in your code that are CPU-intensive, or just plain slow, running them through a profiler like Valgrind (or for PHP, Xdebug) can help you determine if it’s a problem in your code and where that problem may be.
April 30, 2008 02:00 PM
Gail Carmichael
Remember that Google scholarship I told you about back in November? It was the Anita Borg Memorial Scholarship that was to be awarded to Canadian students for the first time. Well, I have been waiting to let you all know how I fared, but wanted to let Google post about it officially first.
Now that they have, I can tell you that I am a finalist, and am excitedly getting ready to head to New York, New York tomorrow morning (getting to the airport at 5am, ugh) for an all-expenses paid retreat with the other scholarship finalists and winners, as well as Googlers. One person I'm really looking forward to meeting is my contact for the Google Ambassador Program, since she happens to work at the New York office.
I will, of course, be posting much about the trip, including lots of photos!
April 30, 2008 12:37 PM
Jos Hirth
This should be easy, right? Well, for reasons unknown to me it isn't. Win2k/98/95 got two sliders: one for sensitivity and one for acceleration. This was great. This was easy. WinXP, however, assumes you always want to use some degree of acceleration - unless you're using the lowest sensitivity setting, which is quite frankly unusable. This is really irritating - especially if you consider that people who disable acceleration typically use a rather high sensitivity. There is only one slider which controls both settings and there is a check box, which can be used to "improve" the sensitivity... whatever that means.
Why am I writing about this anyways? There should be zillions of pages about that topic, shouldn't it? Well, while that's true all I saw so far only contain some nonsense. And they all copy&pasted from each other. Gee. That really helps.
read more
April 30, 2008 08:08 AM
April 29, 2008
Gail Carmichael
Thanks to some of the comments I've received on my previous design, I was motivated to work on the "look" of my mini-course a little longer. This is what I came up with. I would love to know what you think, though I probably won't be able to do any major changes at this stage (unless this attempt proves disastrous!). Also, I forgot to mention last time that the title of a set of slides will go in the white space under the main heading.

April 29, 2008 08:26 PM
As the start of my mini-course on computer science and games designed specifically for girls draws ever nearer, I have been excitedly finishing up an outline with my course's contents. I have a lot of detail written out, but just wanted to share a brief outline for now. Note that one of the reasons for organizing things the way I did is to ensure there is a good level of variety between videos and activities, and not too much "lecturing" in a row. Furthermore, about two or three hours a day will be spent working on an actual game using Game Maker.
Without further ado, here it is!
Computer Science and Games: Not Just for Boys!
Part I: Games and Computer Science
- Introduction
- Computer Science and Games
- Not Just for Boys
- Preview of Course
Part II: Game Design
- What is a Game?
- Key Components
- Introduction to Game Maker
- Design Process 1: Concept Stage
- Design Process 2: The Elaboration Stage
- Design Process 3: The Tuning Stage
- Starting Your Own Concept
- Game Worlds
- Gameplay
- Other Topics You Can Learn About
- Refining Your Concept
Part III: Usability and Design
- Why Good Design Matters
- Principles of Good Design
- How to Learn About Your Users
- This is Computer Science?
- User Experience for Games
Part IV: Graphics
- Vector vs. Raster
- 3D Objects in the Computer
- 3D Objects on a 2D Screen
- Other 3D Graphics Concepts
- 3D Graphics Demo
- Alice
Part V: Audio
- Using Audacity
- Challenges With Game Audio
Part VI: Artificial Intelligence
- Why AI Is Important For Games
- Examples of AI in Games
- Using Finite State Machines
April 29, 2008 01:05 PM
Jos Hirth

- mmm... crispy sectors
It's toast
The weekend started with a premonition. Well, maybe "bad omen" is more accurate. Some rather bad SQL errors showed up, but they were sorted out quickly. The next day the site disappeared. "403 - forbidden", it said. That's just great. Did I already mention that I'm amazingly unlucky these days?
Page 403s, FTP says the password is wrong, but email works. So, I waited for the phone support hours to start. Gee. Fast forward about an hour and I got some techy to talk to. Apparently some HDD failed, it got replaced, some files were wiped (well, all of them - except for some now empty directories), and some access rights were nuked as well.
read more
April 29, 2008 03:36 AM
April 28, 2008
Gail Carmichael
Here's a bit of a teaser for my upcoming mini-course. It defines the "look" I'm giving to my slides and notes and such. What do you think? Will the 13 year old girls like it?
(I should note that I would have made the controller in the background lighter, but I know the projector I will be using doesn't display light gray very well, so I just wanted to ensure it actually showed up!)
April 28, 2008 10:37 PM
The next year or so is going to be an exciting one for the Women in Science and Engineering here at Carleton University. That's right, there's a new branch of WISE Ottawa in town! Thanks to a group of enthusiastic women who see a bright future for females in our field, the Carleton branch of WISE is in the process of being reformed, and already has a few great events under its belt.
There's a lot of work to do this summer, like finding a way to brand ourselves with a fresh new logo, and finishing up a new website, but things are looking really good. We had a couple of talks during the winter semester, including one with Google door prizes and delicious food. I'd like to focus on that one for the rest of this post.
The poster for our April event can still be found here. Our guest speaker was Kamilla Run Johannsdottir, PhD., and she spoke about her experiences with balancing life in research with family.

I know that I personally found this talk very interesting and informative. Being recently married and hoping to have kids before I'm 30, I really wanted to know when the best time was according to someone who has already done it.
Kamilla had her kids after getting her PhD, largely based on when she actually got married and therefore had the opportunity. She had decided to work a couple of years in a full time position before having her first child. A large part of this decision came from the fact that the first few years as a professor can be very stressful and demanding. Apparently newbies often have to work very hard to impress their superiors with their performance in order to prove themselves. This makes it difficult to have the flexibility required when you are the mother of a young child.
Kamilla's talk was very good, especially because she promoted an excellent discussion session afterwards. From this, I think I concluded that, since I do have to opportunity, the best time to have kids would be after courses and comprehensives during the PhD, but before the end when the thesis needs to be defended. Apparently, even the part-time hours available to work on the thesis are enough to get by during that period. It was relieving and encouraging to get this kind of information, even though it may not apply when the time comes.
As usual, we served food at this event, thanks to the Faculty of Engineering and the Google Ambassador program. In addition, both Google and the Carleton Bookstore were very generous and provided us with some goodies to give away as door prizes.
At the end of the evening, we facilitated some discussion to get feedback on how the girls liked our events and what they'd like to see in the future. Some of the ideas included having a summer get together to play Frisbee or soccer, talks on public speaking, talks for elementary and high school students, a mentoring program, frosh week events, financial help in attending conferences for women in the field, advice on transitioning from high school to university, and a few talks focussed on industry. Like I said, the coming year should be really exciting, so stay tuned!
April 28, 2008 09:53 PM
Niko Kiirala
I noticed some time ago that using five pointed stars as example material is growing a bit old. I needed something new to test these filters with. So, I came up with the idea of using animal test subjects. Here are the two: Max and Gina.
While animal testing can be cruel and inhumane, I promise to treat my two test subjects kindly. You'll be seeing them in new Filter Effects tutorials shortly.
April 28, 2008 01:46 PM
Jon Phillips
I wanted to send a big thank you out to The Fedora Project, Max Spevack and Greg DeKoenigsberg for their support of the upcoming Libre Graphics Meeting 2008 in Poland, May 8 - 11!
Dave Neary wrote a good overview of the state of the massively successful fundraiser we put together with Pledgie.com (try it out if you want to raise money for your cause!).
It is still not too late to donate money (you can use paypal with the previous link
which will help get more developers to the event. Cheers to all who gave too and linked to the various posts thus truly shedding light onto the huge community of free and open source graphics users and developers out there in the world
April 28, 2008 07:04 AM
April 26, 2008
Kees Cook
Edgy is now officially at end-of-life.
Looking back through my build logs, I can see that my desktop spent 55 hours, 14 minutes, and 3 seconds on 406 builds related to edgy-security updates I was involved in publishing. These times obviously don’t include patch hunting/development, failed builds, testing, stuff done on my laptop or the porting machines, etc. Comparing to my prior post on this topic, here are the standings for other releases:
dapper: 44:48:24
feisty: 58:49:04
gutsy: 37:06:08
hardy: 86:25:58
Hmm… I think my hardy numbers include devel builds times… I’ll have to sort that out. :)
Thank you Edgy! I will remember you for your wonderful default -fstack-protector.
April 26, 2008 02:39 AM
April 25, 2008
Jon Cruz

Inkscape now has tweaked toolbar size preferences. Why is this? Well the main thing is that it makes the UI more usable on Ubuntu again. There have been some ongoing issues with size, many of which are due to the use of custom toolbars from before GTK+ had stock ones.
A while back I added some options to use 'secondary toolbar' size for the main tools on the left (and the top bar also), but for some users that did not help. Between Inkscape 0.46 being released and me recently getting a laptop with a very small screen (thanks Dice and LugRadio Live), I've been getting more done on that front.
After seeing more bug report activity on it, especially from people running on fixed 1024x768 monitors, I tracked down a bit more. The main issue is that while Inkscape is properly respecting the user's GTK+ theme for sizes of icons, the people setting those themes up for Ubuntu, among others, had chosen to set the two toolbar icons sizes to the same. So switching from using the primary size to the secondary size did nothing to help, as it just switched from 24x24 to 24x24.
So on the one hand the theme designers are imposing their idea of how things will be pretty, but on the other we were facing imposing our idea on what would make things more functional. Either way seems bad. So after splitting this specific issue to its own bug (#221676), I settled in and added enough preferences so that now the end user can decide what they want to do, and on a per-platform basis.

The change reduced the minimum size from the old 652x735 to now be 600x583, just over a 20% reduction in vertical size required. The big gain there is that it should no longer be pushing things for Ubuntu users on lower-res LCD monitors. Additionally now when I flip over from OS X to Linux, I'll be able to keep the smaller icons showing up that make my workflow go faster.
Of course that does tend to mess with the crispness of some of the icons... but if people care about that they can just set the sizes back. In the long run we have plans to address that, but for now at least the work-arounds should be sufficient.
April 25, 2008 11:19 PM
Gail Carmichael
I have to say that I am both surprised and impressed at the power a simple blog such as mine can possess. After all, I write as a hobby, not for any kind of gain, financial or otherwise. Yet the exposure my posts have brought seems to be opening many opportunities!
For example, when I wrote about having some fun with accelerometers, somebody from Kionix (the company that makes the devices we used in class) contacted me and wanted to know if I'd like my own accelerometer to play with. Well, sure - why not!
Then I posted a comment on a story I saw on reddit about my mini-course. Count 'em: not one, but two people followed my link and liked what I was doing enough to write me an email! The first person was highly involved in the movement to get more women interested in computing, and the second was a researcher in computer science education. I think both will be excellent contacts for some future projects I've been cooking up in my mind.
And just a couple of days ago, I received a fairly random phone call from somebody at school. Apparently they had read my post about the Donor Dinner I attended and really liked what I wrote. Enough that those in charge of preparing the donor report for 2007 want to include some of my text in the final version of the publication! What's more, they want to use a photo of me to go with it. I will be having a little photo shoot this Wednesday.
Every time something like this happens I get really excited, which makes the time spent writing worth it. If you write a blog but aren't sure that people actually read it, just keep at it. You might be surprised to learn who's had a look!
April 25, 2008 06:03 PM
Jos Hirth

- A low poly spaceship
Without net access there wasn't much to do. However, modeling was one of the few things I actually could do. Fortunately I had some recent version of Wings3D installed. A few futile attempts later I got something that looked alright. Semi-satisfied with my low poly (52 polygons, 104 edges, 54 vertices) spaceship I went ahead texturing it with Inkscape.
Since the intended rendering size is rather small there isn't a need for fine details. I also wanted to try some bold semi-futuristic look with a touch of military blandness. Using vectors seemed like the most natural choice. Hard vector edges also fit the flat shaded rendering a lot better.
Before I could start with the texturing I had to do the UV mapping first. UV mapping is a bit annoying in Wings3D, but it's alright for simple models. If you aren't familiar with the term: it's about which part of the texture goes where on the model.
read more
April 25, 2008 12:47 PM

- *plop* :'(
I'm actually not dead
Just a bit unlucky. Twice in a row. Being without net access for about 2 weeks is somewhat akin to a new experience. I can't really remember how I did things before the internet. Almost everything I do requires a working connection. I need it for documentation, looking up synonyms/words, downloading/updating libraries/frameworks/compilers, bouncing ideas around, etc.
Everything seems to depend on it. Heck, I couldn't even make phone calls. Maybe I should get one of those annoying mobile phones. Meh.
Not everything was bad though. Having a few days without any PC running wasn't all that bad. I also got around playing some games. No More Heroes (Wii) and God of War 2 (PS2) were actually pretty entertaining. So, I'll dive into that for now.
read more
April 25, 2008 06:38 AM
April 24, 2008
Gail Carmichael
I decided to take a short break between coding and paper writing tonight, and work on setting up my "new" laptop (I bought Christian's old Alienware off of him after he mistakenly thought his cat destroyed it and bought a new one). I have both Windows and Ubuntu installed, though at the moment I am spending more time in Windows. I had some of my basic favorite programs installed already, so I went on an open source software rampage.
Some of the packages I downloaded I've used before (such as Inkscape, of course). But I also picked up some that I always wanted to try but never got around to, like Blender and Scribus. Just for fun, here's a full list of what I've got so far. Let me know if I've missed anything you deem to be essential.
I have to say that the world of free and open source software was pretty foreign to me before last year's
Google Summer of Code. I didn't realize how high the quality of the software was! I also had a somewhat poor impression of the community from a few fanatics I ran into at school. It's nice to have learned that most people are pretty nice and normal -- as far as geeks go at least ;).
April 24, 2008 10:23 PM
Niko Kiirala
Almost two weeks ago I was looking to buy more colour pencils, as my old set of 12 pencils didn't include any skin tones. Well, I found me a nice 24 piece set, which still doesn't contain many skin tones and actually I already had half of those colours. I would probably been better off finding a retailer with loose pencils and buying a couple skin tones.
Well nevertheless, colour pencils
April 24, 2008 09:23 PM
April 23, 2008
Ted Gould
Sorry planet people. I didn't think last night when I posted the pan-o-rama in my blog entry. It's now appropriately thumbnailed.
April 23, 2008 10:59 PM
John Bintz
(this post is part of the Linux Video Production Experience series, which chronicles my experiences with creating a high-quality home movie almost entirely in open source software.)
For my past movie-making adventures, I used mencoder or ffmpeg to encode my noisy, low-motion, un-color corrected video for DVD, which it happily did. There were never any huge spikes in the data, since all of the scenes were equally poor in quality.
And now that I’ve properly cleaned everything up and made it pretty, mencoder did not work out too well for this project, due to its not-so-good MPEG-2 rate control. ffmpeg apparently has the same problem. The issue came up with rapid scene changes or high motion video areas. Several areas in the video caused a friend’s DVD player to skip horribly, which has never happened with any of my videos before.
I needed one additional feature in my encoder this time, and that’s 2:3 pulldown. 24p footage needs to be yanked back up to 29.97fps footage so that it’s playable on most DVD players. And as far as I can tell, you can’t enable soft pulldown in ffmpeg, so that encoder’s out for this job.
Now, in my research, I’ve come across four possible open source solutions that might work:
- Use mencoder, but specify a very low bit rate tolerance (vratetol in the lavcopts options).
- Use mencoder with experimental Xvid rate control compiled in and enable with with vrc_strategy=1 in the lavcopts options. Xvid rate control seems to be more aggressive against the high bitrate spikes than mencoder’s libavcodec rate control.
- Use AviSynth with QuEnc (both running in Wine), which reportedly has extremely good rate control.
- Use Avidemux, which uses its own flavor of the Xvid rate control mechanism. Avidemux will automatically enable the soft pulldown flag if you’re encoding an MPEG-2 file at ~23.976FPS.
mencoder + a low vratetol (somewhere between 100 and 1000) still produced some very high spikes. mplex reported that the max bitrate of the stream was well over the DVD spec. mencoder also has experimental Xvid rate control, which required compiling a new mencoder. With that enabled, however, the output video stream still spikes too high.
AviSynth + QuEnc would have taken some additional work to get the AVI files I output from Cinelerra (in Motion JPEG format) to load with AviSynth. I couldn’t find a free way to get AviSynth to read MJPEG frames. Maybe I’ll have to dust off my old registered copy of the PICVideo MJPEG codec if I want to go down that road…
Avidemux, however, got the job done. The DVD preset gets you 90% of the settings you need for DVD MPEG-2 files. Be sure to enable Xvid rate control in the DVD (lavc) settings and you should be fine. The only tricky part was joining all of the 21 movie files. If all of your final videos are alphabetically sequential in a directory, let’s say “FinalRender,” you can use this bash one-liner to open all of the files into Avidemux (which is in your path) in the right order:
cmd=”"; for i in FinalRender/*; do if [ “$cmd” == “” ]; then cmd=”–load $i”; else cmd=”${cmd} –append $i”; fi; done; `avidemux ${cmd}`
Avidemux appears to be the best way for me to encode my final, cleaned up, 24p Cinelerra AVI files to MPEG-2 DVD format to avoid skipping during playback on standalone DVD players. As usual, if I missed something in my writeup, please leave a commenton the story!
And that’s it! Please let me know if you have any comments or questions about the series. If you want to see some additional part of the process I went through for this production, let me know and I’ll find the time to post another article.
April 23, 2008 02:00 PM