Getting started

View: New views
4 Messages — Rating Filter:   Alert me  

Getting started

by Matthew J. Fisher :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello,

I've been using the GNOME desktop in several different distros for the
past few years, and have an interest in learning how to develop for the
GNOME platform.

I have a small project in mind, but need some advice on choice of
programming language.  I know C, C++, and C# but the tutorials I've
discovered so far seem to be primarily in C.  Is C still the best
language with which to start learning GNOME development?

The project would be a GUI alternative to the existing Lisp script for
gNewSense "kernel freedom verification":

http://wiki.gnewsense.org/Kernel/Kfv-script

I'm not a free software purist, but the gNewSense mindset makes me grin
-- mas papista que el papa.

Thanks in advance for any advice,

 - Matt Fisher

_______________________________________________
gnome-love mailing list
gnome-love@...
http://mail.gnome.org/mailman/listinfo/gnome-love

Re: Getting started

by Robin Sonefors-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On lör, 2009-08-01 at 08:21 -0400, Matthew J. Fisher wrote:

> Hello,
>
> I've been using the GNOME desktop in several different distros for the
> past few years, and have an interest in learning how to develop for the
> GNOME platform.
>
> I have a small project in mind, but need some advice on choice of
> programming language.  I know C, C++, and C# but the tutorials I've
> discovered so far seem to be primarily in C.  Is C still the best
> language with which to start learning GNOME development?

I would say no, unless you're really familiar with C. The C used by
GNOME looks pretty alien in some places, and will, I think, take longer
to figure out, compared to if you use the bindings for other languages.

I haven't really looked at the C++ bindings, but the C# bindings are in
my opinion very good, and I found their documentation very helpful.
MonoDevelop is also a pretty decent way to get a modern programming
environment. However, I never had to look for beginner tutorials, since
I understood GTK+ when I started using it, so I can't say anything about
avability or quality there. http://www.mono-project.com/GtkSharp has
pointers to a few tutorials and the API reference for C#.

It's also worth pointing out that the GNOME APIs are very similar
between the different languages they support. C#, for instance, can use
real namespaces, classes and properties, while C have to fake it, but
that's pretty much all the difference there is. Thus, once you figure
out the basics, you will be able to read C documentation, and use it for
coding C# without much trouble.

Good luck!

_______________________________________________
gnome-love mailing list
gnome-love@...
http://mail.gnome.org/mailman/listinfo/gnome-love

Re: Getting started

by Javier Jardón :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

2009/8/1 Matthew J. Fisher <mfisher_ix@...>:
> Hello,
>

Hello Matthew!

> I've been using the GNOME desktop in several different distros for the
> past few years, and have an interest in learning how to develop for the
> GNOME platform.
>

Great :)

> I have a small project in mind, but need some advice on choice of
> programming language.  I know C, C++, and C# but the tutorials I've
> discovered so far seem to be primarily in C.  Is C still the best
> language with which to start learning GNOME development?
>

You can take a look to Vala [1] language too. Is very similar to C#
but you don't need a special runtime environment.
You have a tutorial [2] and a lot of examples [3] in Gnome wiki.


> The project would be a GUI alternative to the existing Lisp script for
> gNewSense "kernel freedom verification":
>
> http://wiki.gnewsense.org/Kernel/Kfv-script
>

Very interesting, inform us of your progress on you new project ;)

Regards,

[1] http://live.gnome.org/Vala
[2] http://live.gnome.org/Vala/Tutorial
[3] http://live.gnome.org/Vala#head-9c728d151a2a0483d4f3b5837e5b545df9d8499d
--
Javier Jardón Cabezas
_______________________________________________
gnome-love mailing list
gnome-love@...
http://mail.gnome.org/mailman/listinfo/gnome-love

Re: Getting started

by Richard Henwood-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


--- On Sat, 1/8/09, Matthew J. Fisher <mfisher_ix@...> wrote:

> From: Matthew J. Fisher <mfisher_ix@...>
> Subject: [gnome-love] Getting started
> To: gnome-love@...
> Date: Saturday, 1 August, 2009, 1:21 PM
> Hello,
>
> I've been using the GNOME desktop in several different
> distros for the
> past few years, and have an interest in learning how to
> develop for the
> GNOME platform.
>
> I have a small project in mind, but need some advice on
> choice of
> programming language.  I know C, C++, and C# but the
> tutorials I've
> discovered so far seem to be primarily in C.  Is C
> still the best
> language with which to start learning GNOME development?
>
> The project would be a GUI alternative to the existing Lisp
> script for
> gNewSense "kernel freedom verification":
>
> http://wiki.gnewsense.org/Kernel/Kfv-script
>
> I'm not a free software purist, but the gNewSense mindset
> makes me grin
> -- mas papista que el papa.
>

Hi Matthew,

This sounds like a nice project to get started with!

I also recently started developing a Gnome application: in my case I chose Python - although I didn't have any previous experience with it.

I was able to find lots of tutorials and examples, and I have able to rapidly get a prototype application going. I've begun porting one performance critical section of the code to C, and it is proving to require significant patience - as other posters have suggested.

If I may offer one suggestion: you should familiarise yourself with the ongoing debate concerning the use of C# for Free Software [1]. When you come to share your work with a wider audience (which I hope you have ambition to do!) this topic may be raised.

Best regards,
Richard


1. for example: http://lwn.net/Articles/341771/


     

_______________________________________________
gnome-love mailing list
gnome-love@...
http://mail.gnome.org/mailman/listinfo/gnome-love