Monday, April 19, 2010

Simple Scan 1.0

Last week I hit 1.0* for simple scan. It's not perfect but it appears to be reliable and is an improvement on the existing scanning experience.



I've prosed simple-scan for GNOME 3.0 and will be following the GNOME release schedule from now on (next release will be 2.31.1).

*Make that 1.0.2. There's always a few last minute fixes :)

Saturday, April 03, 2010

GCalctool 5.28 in Ubuntu 10.04 LTS

I've made a PPA containing GCalctool 5.28 backported to Ubuntu 10.04 LTS. To install use the following commands:

$ sudo add-apt-repository ppa:robert-ancell/gcalctool-528
$ sudo apt-get install gcalctool-528


(Provided so you can run the Karmic gcalctool in Lucid if the interface is more useful to you).

(UPDATE: We've decided to stick with GCalctool 5.28 for Lucid so this PPA is obsolete).

Friday, April 02, 2010

SVG themes for glChess

Thanks to a a patch from Alexey Kryukov glChess now supports themes in SVG. Thanks Alexey!

Embrace Change

This is a letter to all those who think change = bad.

If you don't want your software to change then don't upgrade.

If you want your software to improve then expect (and enjoy) change.

If a feature is present in a version X, then that feature may not exist in version X+1. This is not a regression - applications don't exist to provide features; they exist to serve the users that the application is targeted at.

Default applications are there to serve the greatest number of users. In both the proprietary and open-source worlds there is often a "basic" and an "advanced" application for a given task. This is a good thing - trying to please everyone isn't as good as focussing on one group.

If there is an application that better serves your need then use it. (If you are an advanced user then use an advanced application).

I'm personally most interested in writing applications for the beginner to intermediate user. I'll relate this to the applications that I develop:
  • Simple Scan is not a replacement for xsane or gscan2pdf. But it is great if you have a picture you want to upload to Facebook.

  • GCalctool does not have the features of Qalculate or wxMaxima. But it does solve common equations.

  • glChess would not be used by a experienced chess player like xboard. But it is a good introduction to the game of Chess.

Monday, March 29, 2010

GCalctool 5.30

GCalctool 5.30 is now released. Gcalctool is the default GNOME calculator and this is also the default in Ubuntu.

Both GNOME and Ubuntu use a synchronised six month release cycle.

  • The great thing about regular releases is... Predictability!

  • The bad things is... You may not get all the features you wanted done in one cycle...

Here's my summary of what to expect in GCalctool 5.30.

The good:

  • The display now acts like a standard text entry (no obscure shortcut keys)

  • Equations look like correct mathematical syntax (π, |−4|, 6×10⁻², sin⁻¹ x, 2x²y, 3E₁₆)

  • Polynomials can be solved (x²+2x−4, (x+1)(x−2))

  • There is no limit on the number of variables (x=55, value=21)

  • Bases can be mixed in the same calculation and any base between 2 and 16 can be used (120₃+3E₁₆)

  • Units can be converted (3 feet in centimeters, 3.22 EUR in AUD)

  • The help is now topic based (Mallard format)

  • The UI has less visual clutter:

The bad:

  • Hexadecimal numbers are harder to enter (you need to explicitly add the base 16 suffix (Ctrl+H) to them).

  • Variables can't be removed (the workaround is to edit ~/.local/share/gcalctool/registers)

  • There is no support for functions (you should be able to enter f(x)=6x+2, f(3))

  • There is no GUI for non-currency conversions (use the keyboard)

  • Complex numbers weren't working in time for release:

The ugly:

  • Converting between number bases is unintuitive (enter number then press base buttons to change)

  • Programming mode is a mess of buttons (needs complete redesign for GNOME 3.0):

  • Financial mode is crying out for some graphs (it would be better to show financial models and adjust the values)

Saturday, March 06, 2010

Simple Scan 0.9.6 (1.0 Release Candidate)

A few days ago I released simple-scan 0.9.6. This version is the 1.0 release candidate.

There are two things I'd like to fix before 1.0:

  • There may be some issues with scanning from an automatic document feeder (ADF). Please comment on bug 512553 if you are having problems. (I don't have an ADF to test).

  • The generated PDF files do not JPEG compress the images. This is because the Cairo renderer does not support it. If you know of a C accessible library that can do this or even how to hard code this (the PDF files are just a single image per page) then please comment on bug 534122.

Tuesday, March 02, 2010

Friday, February 19, 2010

Jobs at Canonical

If anyone is looking for an open source job at a great company, make sure you check out the available jobs at Canonical. There are 34 open at the time of writing. I found about my job on Planet GNOME a year ago and I'm glad I did!

Mallard Documentation


GCalctool now has a new help document in Mallard format. This is my second Mallard document I've written, the first was the help for Simple Scan.

Wow. Mallard is really, really easy to use!

Mallard documents are topic based which basically means writing a few paragraphs on each activity your readers can do with your application (like how to use trigonometric functions or an automatic document feeder). I wrote the topics over a week with a text editor and marked them up at the end.

Testing is great. Just run yelp with the directory the files are in to browse the documents immediately.

If you want to contribute, take the ten minute tour, pick your favourite GNOME application, ask if they've got documentation that needs updating and get writing!

(I recommend starting by copying an existing document; I used the gbrainy help as a basis for the Simple Scan and GCalctool help).

Thursday, February 18, 2010

AdWords Experiment

Google keeps bugging me to open an AdWords account (via Google Analytics, which is a lot of fun). So with my $75 free* credit I am going to join the advertising game and advertise this blog! It will be interesting to see how powerful advertising is...

So, if you got here via a Google ad. leave a comment!

Maybe I should have advertised a rickrolling site instead... :)

*Free if you include having to spend $20 to set up the account.

Monday, February 15, 2010

gdm2setup

Tired of not being able to configure many settings for GDM in Karmic? Two community members; Garth Johnson and Nick Glynn have developed a great tool called gdm2setup which gives you a lot more control:


Try it out from their PPA!

Saturday, February 13, 2010

Simple Scan 0.9.0

Here it is; feature complete and just some minor bugfixes from 1.0:


If you haven't tried it, it comes by default in Ubuntu 10.04 (Lucid), you can enable the PPA in Ubuntu 9.10 (Karmic) by going to System>Administration>Software Sources>Other Software>Add and adding ppa:robert-ancell/simple-scan then installing the simple-scan package.

Any other GNOME system should be able to build it from source.

From now to 1.0 I wont be adding any new features, just fixing bugs and polishing.

Post 1.0 the major features I'm most interested in are colour management, optical character recognition, integration with gscan/gnomescan, integration with photo management software and storing density information in saved files.

Please help if you can!

Thursday, February 04, 2010

Linux.conf.au 2010

Here is a summary of the interesting things I saw at Linux.conf.au 2010.

Interesting Projects


Weta Digital (i.e. the New Zealand graphics company behind Lord of the Rings, Avatar) about their 35,000 core server farm all running Ubuntu! And if you want to do some rendering with the old server farm Green Button bought it any you can render directly from Blender at 1c US per CPU minute.


Albany Senior High School is a New Zealand school who have successfully implemented an entirely open-source infrastructure running Ubuntu Desktop and Mandriva servers.


The Village Telco project showed off their Linux based VoIP mesh network solution for small villages.


There seemed to be a rocketry/Linux theme going on. The White Label Space project talked about their ambitious space program funded by advertising and the TeleMetrum project talked about using Linux and open hardware to make telemetry for amateur rocketry.


FOSS and Proprietary Software


Jeremy Allison from Samba talked about the elephant in the room (Microsoft) and how we shouldn't forget their threats against open-source, especially in the light of the recent Tom-Tom patent lawsuit. However he also said that the best thing to do was keep making better software as not doing that is the more likely reason for us to fail.


Benjamin Mako-Hill talked about Antifeatures - in where he described how proprietary software often comes with features you don't want (e.g. digital rights management) and how you often have to pay to remove these features (for example paying extra money to Sony to get a computer without crapware).


I sat in on some government and open-source talks and the short answer seemed to be "policy was good but not seeing major uptake".


Technology


Python 3.0 looks really well managed. There are a number of tools now available to transition from Python 2.0 to Python 3.0 and even tools to produce Python 2.0 compatible applications from a Python 3.0 codebase. The improvements by Google in Unladen Swallow are planned to be integrated into the official Python 3.0. There will be no syntax changes until Python 3.3 (a duration of two years) which will encourage Python 3.0 uptake.


The PyPy project talked about what they do. I thought they were a Python interpreter implemented in Python but in fact they are Python interpreter generator. That can generate different types of interpreters (e.g. stackless)... For different targets (e.g. C code, .NET, Java bytecode)... for different dynamic languages (e.g. Perl). So a really interesting technology. They see themselves as more of a research project at the current time.


In graphics the Cairo project talked about accelerating 2D on the GPU. The Clutter project mentioned their release cycle is now synchronised with GNOME/Moblin.


The pandora-build project talked about how they'd made autotools easier to use. A quick survey of the audience showed everyone uses autotools but no-one understands it. By using pandora-build you can write less autotool magic (pandora sets up sane defaults and provides simple macros for common things) and are have a more portable build system (pandora handles multiple versions of autotools).


Distributions


Lucas Nussbaum talked about the Debian QA team and tools (e.g. Ultimate Debian Database, debcheck, piuparts, lintian, DEHS, bapase, MIA team) they have produced to keep track of what is going on in Debian. He also talked about the relationship between Debian and Ubuntu which seems to be in reasonable state. There was some concern that Ubuntu did not provide many resources to help Debian and that Debian did not want to become Ubuntu's "package supermarket".


The vcs-pkg project showed their aims in making moving patches between distributions easier.


The Launchpad developers talked about how they are improving integration with external bug trackers and translations.


And finally; When the videos are available I highly recommend watching Glyn Moody's keynote talk. He talked about how open-source has influence other revolutions of sharing that have occurred in the last 30 years. He skilfully shows how FOSS is more than just about software.

Friday, January 15, 2010

gbrainy in Lucid

Ubuntu Lucid Alpha 2 has just been released and a new addition is the mind puzzle game gbrainy.


You can read more about the latest release in a blog post by Jordi Mas (the author).

gbrainy is a great game and we want to find any problems before final release so please try it out! If you don't already have it installed then you can get it from the Ubuntu Software Centre (search for gbrainy).

If you find a problem the best thing to do is file a bug in GNOME. If you don't have an account on GNOME Bugzilla but do have a Launchpad account you can file a bug against Ubuntu. I am working on getting the "Report a Problem" menu entry into the help menu which will make this even easier!

Have fun!

Monday, December 21, 2009

Translate Simple Scan

One of the great features of Launchpad is how easy it is to translate applications. Make sure you have a Launchpad login and then you can translate Simple Scan from your browser!

Your translations need to be reviewed by the Ubuntu Translators team, if you are a member please review any translations!

Here is the UI for 0.7.6 in Romanian:

Tuesday, December 15, 2009

The demise of the function key


I recently upgrade to a new Dell Studio 15 and retired my old Inspiron. One thing I've noticed is the function keys are now secondary - these keys are now multimedia/system functions by default and you need to use the blue Fn key to activate the old F1-12 behaviour. Other Dell and Apple laptops (at least) seem to be doing the same thing.

Is this the end of the function key? The Litl keyboard got rid of them entirely. The key combination to use them on my laptop is sufficiently difficult that they might as well not exist for me.

So this leads me to the conclusion:
- I can never rely on function key shortcuts in any software I write.
- The existing window management shortcuts (e.g. alt-F4 to close window) don't work anymore. Now I understand when people complain how applications don't consistently bind the same key to close window (Ctrl+Q or Ctrl+W or something else or nothing?).
- At the Lucid UDS we discussed Compiz keybindings - often these were bound to function keys. I notice the macbook uses the old F3 key for "show all windows". I hope some standard could emerge for these functions on PC keyboards.

I can't say I'm going to miss them overly.

Friday, December 11, 2009

Introducing Simple Scan

One of the goals I want to achieve for Ubuntu 10.04 (Lucid Lynx) is to make scanning really easy. So I've been working on Simple Scan:



Please try it and report any problems you have.

To install add the PPA and install the simple-scan package or build from source.

The GUI is a mess

Yes. This is the first functional release. The GUI is being redesigned for 0.8. The 0.7 release should contain all the functionality required for 1.0.

Who is simple scan for?

This application is designed for the 95% of users who just want to connect their scanner and quickly have the image/document in an appropriate format.

How does this relate to GNOME scan?

Simple scan does not use the GNOME scan to get the scan data. This is because Ubuntu 10.04 is a Long Term Support release and bringing the whole GNOME scan stack into main is risky (it was previously proposed for 10.04 but was not found to be stable enough). There is an open bug to change to gnomescan when that is appropriate.

Wednesday, July 29, 2009

format not a string literal and no format arguments

Some time ago GCC started producing warnings like this:

warning: format not a string literal and no format arguments

What does this mean? GCC is saying that a function in printf style has a format string that it cannot check matches the format arguments. Here is some common code GLib code that causes this error:

GError *error = ...;
g_error(error->message);


Why is this a problem? As error->message cannot be checked it may contain a printf flag sequence, e.g. "Invalid data: 'g^y#%s'" (i.e. %s) that would cause run-time to try and access a non-existent argument. It could be worse and the format string could be user-input that is attempting to exploit your program.

So the solution is to always use a string literal for formatting like this:

g_error("%s", error->message);

Wednesday, July 15, 2009

Gran Canaria Desktop Summit 2009

This year I was able to attend the Gran Canaria Desktop Summit which was great as I hadn't been to a GNOME meetup before.

Here are my impressions:

  • The community is very alive and active! There are many companies and individuals working on improving GNOME.
  • The GNOME foundation is well organised and financially sound. Donations are a big part of this success. If you contribute to GNOME in any way then become member (it's easy to join!).
  • Really impressed with the quality of PiTiVi — it's now a very capable basic video editing program. One thing the PiTiVi developers want though is a media manager...
  • ...which may be getting closer. Banshee is splitting it's backend out into Banshee Core which will be a database of music, video and photos on your computer. Hopefully there will be some convergence between this and tracker, zeitgeist and akonadi to provide a seamless user experience to your media.
  • GNOME Shell is still young but is showing some interesting breaks from the traditional desktop.
  • Project Mallard is going to make the GNOME documentation much better.
  • Testing initiatives like Mago and LDTP should see an increase in the quality of software.


The future looks really good!

Friday, March 20, 2009

New Job

So, tomorrow I finish my current job and move onto new things on Monday. I'm joining Canonical as a GNOME Desktop Engineer to work alongside well-known GNOMEers like Martin Pitt and Sebastien Bacher. A few years ago I hadn't seriously considered I could spend my day job working open-source so am very excited to get stuck in. Watch this space...