Archive for the ‘GNOME’ Category

Nokia to buy Trolltech?

Monday, January 28th, 2008

According to a notification of trade on the Oslo Børs market, Nokia has made an offer for Trolltech of about 843 million Norwegian kroner , around €104 million.

What this could mean for GTK+ is anyone’s guess. I’d expect at least that Nokia’s competitors that use Qtopia (like Motorola, Panasonic and Sony) are probably a little worried at the moment. Maybe there’ll be impetus for OSSO to move over to Qt, or maybe there’ll be internal competion at Nokia between a Qtopia stack and a GTK+/X11/Freedesktop stack. Maybe Qt will become more closed as Nokias pushes its advantage, or maybe it’ll be more open as development becomes less dependant on non-GPL license revenues, or maybe it’ll just stay the same.

An interesting left-field move in this space is OpenMoko moving over to EFL, but on a primarily GNOME/Freedesktop stack. EFL is certainly much more capable than GTK+ in producing flashy UI’s on limited hardware. I”ve also heard of some companies writing UI’s in Flash using Gnash. I also wouldn’t be suprised if we start seeing embedded hardware running Mono and Moonlight at some point.

Maybe one day we’ll have a GTK3 with DOM-like two pass event system and a cairo backend that renders totally on the GPU. One thing’s for certain, there’s a hell of a lot of competition on the toolkit front and it will only grow. adobe photo shop serial
window of the world Buy cheap Intuit QuickBooks 2006 Premier Edition at low price
discount adobe pagemaker
ebook cs2 Buy cheap Indigo Rose AutoPlay Media Studio 7 at low price
QuickDirt
xilisoft intervideo ipod Buy cheap IMatch Professional Edition 3.6 at low price
quark xpress 5.0 serial
Infragistics.NetAdvantage 2005 vol 3 Buy cheap IDM UEStudio v06.40 at low price
sony acid 5.0c
adobe acrobat discount software Buy cheap IBM Lotus SmartSuite Millenium Edition Release 9.8 at low price
window media player codec
microsoft project software training Buy cheap IBM Lotus Notes Client V6.0.3 at low price
Acronis Disk Director Server 10.0
adobe software download Buy cheap IBM Lotus Notes 6.0.2 at low price
windowsforms component collectionNET
microsoft software downloads Buy cheap IBM Lotus Domino 6.0 at low price
microsoft softwares
adobe creative cs2 premium suite Buy cheap HyperChem 8.03 at low price
Acrobat Pro
lipsync studio Buy cheap HOYLE CASINO 3D (SIZE 0.67 GB) at low price
Full Version for Windows
buy acrobat 7.0 pro upgrade Buy cheap Honestech VHS to DVD 3.0 Deluxe at low price
quark xpress 6 passport
upgrade from window 98 to window xp Buy cheap Hollywood Screenplay at low price
Adobe Standard
macromedia flash software free download Buy cheap H&R TaxCut Home and Business 2007 (US Only) at low price
microsoft project software download
adobe writer software Buy cheap Guitar Pro 5.2 at low price
after effects tips
microsoft word software price Buy cheap Grass Valley ProCoder 3 at low price
quarkxpress
Buy cheap InDesign Version 4 Buy cheap GraphiSoft ArchiCAD 9.0 R1 International at low price
download full guild version war
TERRAMODEL Buy cheap Grand Theft Auto: San Andreas (3.94 GB) at low price
windowsforms component collectionNET
financial planning software ratings Buy cheap Google SketchUp Pro 6 for Mac at low price
quark xpress 6.0 keygen
ABSoft Neat Image Pro Buy cheap Genie Backup Manager Professional 8.0 at low price
orcad pspice schematics 10.5
Neat Image Pro+ Edition 5.0.5.0 Buy cheap Freedom Force vs the Third Reich (SIZE 0.90 GB) at low price
family feud oem full version
adobe software for macintosh Buy cheap FL Studio Producer Edition 7.0 at low price
macromedia software suite
pella window Buy cheap Final Draft 7 at low price
oem full version screensaver
adobe software pp. Buy cheap Final Draft 7.1.1.19 at low price
adobe photo shop 6.0 tutorial
personal finance software review Buy cheap FileMaker Pro 9 Advanced at low price
Barcode Maker v4.1.2.32
autocad 2006 CD Buy cheap FileMaker Pro 9.0 Advanced for Mac at low price
free quark xpress download
photo shop elements 3.0 review Buy cheap Far Cry (SIZE 3.45 GB) at low price
quark xpress 6.1 download
adobe store Buy cheap Extra Drive Creator Pro v4.3 at low price
autocad 2006 CD
OEM Adobe software Buy cheap Extensis SUITCASE X1 for Mac at low price
oem auto cad
adobe photo shop cs keygen Buy cheap Extensis Portfolio 8.1.0.0 Multilingual at low price
adobe indesign cheap
macromedia softwares Buy cheap EndNote X1 for Mac at low price
PhotoShop CS2 v9.0
Buy cheap Premier Pro 1.5 Buy cheap Effective Studios SiteStudio Professional 6 at low price
window operating system upgrade
videostudio mpeg4 plug in Buy cheap EdgeCAM 12 at low price
discount software uk
map und guide german 11.0 Buy cheap Easy Audio CD Ripper v2.0 at low price
quarkxpress tutorial
Alias Mental Ray Standalone Buy cheap DVDIdle Pro 5.84 at low price
download full version of zoo tycoon
rgc audio z3ta + Buy cheap Dramatica Pro 4.0 at low price
CHEAP ARCHITECT
download window xp upgrade oem Buy cheap Discreet Lustre 2.0 at low price
quark xpress 6.1 crack
Acrobat 6.0 Professional Full Retail for Windows Buy cheap Discreet Combustion 4.0 for Windows at low price
diablo full version download
Oasys Suite 9.1a Buy cheap Digalo 2000 at low price
adobe photo shop cs
buy bargain adobe software Buy cheap Diffraction Limited MaxIm DL 4.5 at low price
tivot desktop
small business accounting software Buy cheap Diffraction Limited MaxDSLR 4.0 at low price
oem Adobe Acrobat 7.0 Professional
discount adobe photo shop plugins Buy cheap Deskshare Video Edit Magic 4.42 at low price
quark xpress 6 demo crack
window repair Buy cheap Deltagraph 5.6.2 at low price
hash animation master 2004
full version game Buy cheap Deckadance 1.14 Club Edition at low price
microsoft word software download
zalsoft Buy cheap Daz 3D Bryce 6.1 at low price
Upgrade from Acrobat Pro 6.0 ONLY
full version window xp Buy cheap CyberLink PowerProducer 4.0 at low price
adobe software free
2 adobe cheap creative premium suite Buy cheap Cyberlink PowerDVD Ultra Deluxe 7 at low price
encore dvd
financial software free Buy cheap CyberLink PowerDVD 6 Deluxe at low price
trance xpansion
window installer Buy cheap Cute DVD Clone 2.2 at low price
creative cs2 premium suite
discount software mac Buy cheap Crystal Xcelsius Professional v4.5 at low price
window longhorn
accounting software small business Buy cheap Crystal Reports Professional Edition 11 at low price
discount adobe photo shop tutorial
oem Microsoft Windows XP Professional Buy cheap Crystal Reports Developer Edition 2008 at low price
window of the world
cheap Creative Suite Buy cheap Crystal Reports 10 at low price
macromedia software price
quark xpress 6.5 update Buy cheap Crystal Analysis Professional 9.0 at low price
zwcad
download family feud full version Buy cheap Corel XMetaL Author 4.0 at low price
microsoft project software development
Winternals Administrators Pak 5.0 Buy cheap Corel WordPerfect Office X3 Standard at low price
discmaster platinum
microsoft office software for sale Buy cheap Corel Ventura 10.0 at low price
adobe photo shop cs upgrade for window
after effects 6.5 tutorials Buy cheap Corel Smart Graphics Studio 1.1 at low price
trance xpansion
adobe acrobat 7.0 professional upgrade from professional version 6 Buy cheap Corel Rave 2 at low price
adobe photo shop class
MySQL-Front version 3.2 Buy cheap Corel Procreate KPT Effects at low price
acrobat adobe discount software
adobe photo shop mac Buy cheap Corel Procreate KnockOut 2.0 at low price
code key product upgrade window
Nero 7 Ultra Edition Buy cheap Corel Print House 6 at low price
microsoft publisher software download
adobe photo shop 5.5 Buy cheap Corel Photobook 10.3 at low price
accounting system software
microsoft software updates Buy cheap Corel Paint Shop Pro PHOTO XI at low price
cheap softwares
buy 28040290 Buy cheap Corel Painter IX for Mac at low price
visual studio 2005gauge
quark xpress tutorials Buy cheap Corel Painter IX at low price
Sonic Solutions MyDVD Studio Deluxe Suite 6.0
creative suite Buy cheap Corel KPT 6 at low price
window media player 10
quark xpress viewer Buy cheap CorelDRAW Graphics Suite X4 at low price
download discount adobe photo shop software
discount adobe photo shop download Buy cheap CorelDraw Graphics Suite X3 at low price
counter strike full version download
upgrade window explorer Buy cheap Corel Designer Technical Suite 12.0 at low price
edition full home version window xp
download full version pc game Buy cheap Corel Designer 10.0 at low price
PhotoShop CS 2 software
Tascam GigaStudio 160 3.10.0.2270 Buy cheap Corel Bryce 5.0 at low price
adobe premiere
encore Buy cheap CoonCreekSoftware Estimate Master 5.13 at low price
adobe editing software
virtual organ+delphi Buy cheap Conitec Gamestudio Pro A7 7.05 at low price
internet explorer full version
DevExpress ExpressNavBar 1.0 Buy cheap ConceptDraw MINDMAP Professional 5.0 at low price
adobe photoshop oem download
window xp home Buy cheap Conceiva Mezzmo 1.1 at low price
quark xpress 5 update
learn quark xpress Buy cheap Conceiva ConvertHQ Premium 1.1 at low price

In Critique of Git

Monday, November 26th, 2007

Now as anyone who knows me knows, I love Git. I find it gives a very productive and comfortable workflow. One of my favourite new(ish) features is git rebase --interactive, which along with cheap’n'fast branching gives a great way to hack and commit as you go and then later on refactor your work into sets of nice orthogonal patches.

However, there I do still find a good few things wrong with git, so I’d like to discuss these problems and possible solutions:

  1. Error Messages

    In general git has some terrible cryptic error messages. My favourite example is if you modify a file and then pull a change that modifies that file before you commit it:

    Updating beb8c37..b953e6f
    test: needs update
    fatal: Entry 'test' not uptodate. Cannot merge.

    WTF? what does uptodate mean? why isn’t it up to date? whats gone wrong? what should i do?
    Surely something like:

    Cancelling pull as 'test' has changes that would be overwritten by this pull. Please commit your changes or force an overwrite using the '--force' flag

    would be a lot better?

    I leave it as a reader excercise to repeat this process for most error messages…

  2. The index

    Why oh why oh why is it called the index? It does no indexing as far as the user is concerned. Its name gives you no clue to what it is, you don’t know when or how you’re supposed to use it. git add and git rm modify it and it’s used all over the place by the obscure low-level git helpers that you stumble over.

    How about commit staging area, that being what it actually is. You could have nice commands like git stage and git unstage and git stage --interactive. That’d make more sense, right? Then git add and git rm would be a lot more meaningful, being only used when you actually want add or remove a file.

  3. Remotes

    With git remote this is a lot better than it used to be - having to use cryptic refspecs (see git-pull manpage for the gory details). Unfortunately refspecs are still scattered all over the documentation just to confuse you… That should almost certainly be moved out to less user-visible documentation.

    The main issues I have now are:

    • Remote branches don’t always behave like local branches when they should. In particular git pull . <remote branch name> doesn’t work (and gives an obscure error) but git merge <remote branch name> does. remote branches should act just like local branches you can’t modify.
    • I’m not sure I like git branch -r to list remote branches, maybe git remote branches would be nicer and more obvious, or even git branch --remote
  4. Lots of git-* commands that confuse people

    This is a common complaint, and I have to say that I agree. Why not put all the low-level commands in libexec? People who really use them often (which can’t be many!) can always add it to their path.

  5. No bug tracker!

    For such a user-facing tool, a bug tracker would be very useful for users who lack the experience or time to get their hands dirty in the codebase. It certainly seems that just taking bugs to the mailinglist without a patch isn’t generally useful.

So, what do people think? What other bugbears do beginners and experienced git users see? Are these useful ideas?

After some discussion, I’ll happily take these to the git mailing list and come up with some patches!

Update:
Looks like people had some problems with my OpenID based login. Comments are now open.

Open Source in Mobile

Monday, September 17th, 2007

I’ve just landed in Madrid ready for OSiM tomorrow. If you’re there and want to chat about Codethink, GNOME Mobile, Tinymail, OHM and power management, HAL on embedded, D-Bus or anything else, do feel free to search me out!

gobject-introspection

Monday, September 10th, 2007

So, progress has been moving on nicely on a tool for generating gobject-introspection xml. Development’s getting pushed forward now by two veritable geniuses, Jürg Billeter and Mathias Hasselmann. We’ve got sparse able to handle extended attributes, so headers can be marked up with details like ownership of returned data. There’s also a git branch of gobject-introspection where we’ve been delveloping some python code that takes the headers, runs sparse over and generates some basic introspection XML, using ctypes to call into gobject for getting interfaces, signals and properties.

Very Nice!

BUT, we’ve hit a big problem. Sparse is licensed under the Open Software License 1.1. Debian considers this non free, and it certiainly looks to have some overly onerous clauses. Linus did try to relicense it a few years ago, but hit a brick wall with Transmeta, who own some of the copyright from when Linus worked there.

We might end up having to drop the use of sparse and maybe have our own bison-based parser. We really don’t want to have to go there though. So, here’s my lazyweb request - Does anyone out there know anyone at Transmeta that we could talk to about relicensing this work? It might be worth pointing out to that it might be in their interests, given the patent termination clauses.

Moving..

Saturday, July 7th, 2007

This week I’m going to be moving house to the lovely Hope Valley in the Peak District. Its an exciting move and I’m looking forward to going bouldering and climbing, but there’s a terrible side-effect - I’m missing Lug Radio Live. I’m insanely jealous of everyone who can go - I know Jono will show you all a wonderful time :) I’ll also have to miss the warm up days of GUADEC but I’ll be there from the core days till the end. Can’t wait to see everyone there!

Update: I’ll actually be getting to GUADEC for Sunday night now, so I’ll be there for the GMAE meeting!

Introduction to Codethink

Friday, July 6th, 2007

As those of you who’ve been a bit more observant may have noticed, I now have a new company - Codethink Ltd. It’s really just starting up, but so far we’ve been doing work on HAL, OHM and Tinymail and it’s been good fun. However I don’t want to go the normal contracting house route of taking on employees to supply demand. This inevitably leads to static power structures and static role assignments which generally seems to lead to inefficiency, conflict and boredom as a company grows.

Where I want to take Codethink:

In business, I believe the future lies in loosely connected individual contractors, dynamically coming together to attack a project or idea, much as was described a few years ago in the seminal article ‘The Dawn of the E-lance Economy’ by Malone and Laubacher (Though I have to admit I hate the term ‘E-lance’..). Back then a few businesses were started up to try to facilitate this, like guru.com and elance.com, but I think these fail fundamentally as they don’t represent the knowledge of the network - that requires real people who actually know each other.

Of course here in open source we implicitly understand the importance of knowing each other’s strengths, the importance of introducing new people to our community and building new expertise. This can only happen in loosely-bound structures, where cost of entry is negligible - quite the opposite of the standard large-corporation model.

So with Codethink I propose to act as an agent of change. I plan to provide support and help to groups and individuals who want to strike out on their own. I will use my knowledge of the management, architectural and coding expertise of these individuals to provide the service of assembling teams to attack projects for clients.

There needs to be another side to the equation. For this to scale, I also need to invest in bringing new people into our open source world and training them as experts able to strike out on their own. So that means taking on employees of a kind - but with the covenant that I will be expecting each employee to be looking at becoming her own boss in time.

So my cards are on the table now - for this plan to work it needs to be transparent by default. It may turn out to be a crazy idea that’ll never work in practice, but lets see.

If anyone wants to chat with me about these plans, you can find me at rob.taylor@codethink.co.uk on email and XMPP and I’m always around as robtaylor on Freenode and GIMPNet.







the taste of sweet crack

Wednesday, June 27th, 2007

I’ve been gradually pushing on in my free time on gobject-introspection, so I can make the dbus-glib bindings decent. A couple of months ago back I started hacking up a code scanner to generate the introspection xml,using code from gtk-doc, but using perl regexps to parse C just made me feel dirty…

Johan Dahlin pointed me at Sparse, a front-end parser for c developed by some of the kernel guys. The only problem is that it doesn’t have language bindings (or even, seemingly, a stable abi). So I’ve just submitted a patch to sparse that adds an executable ‘c2xml‘. c2xml will dump the parse tree of the input file as a simple xml structure, suitable for manipulation by some python or suchlike. That could then be used to, say, generate c api descriptions, documentation and language bindings or make code navigation or refactoring tools.

I like it!