Michel Alexandre Salim on lähtöisin Indonesiasta ja tekee tohtorintutkintoa Saksassa. Hänen tutkimusryhmänsä keskittyy wikeihin ja ohjelmistokehitystyökaluihin. Michel on käyttänyt Fedoraa pitkään ja kertoo, mitä sosiaalisen median ja web-kehityksen työkaluja Fedoran kanssa kannattaa käyttää.
Olen indonesialainen, mutta olen asunut Singaporessa, Isossa-Britanniassa ja Yhdysvalloissa. Suoritan nyt tohtorintutkintoa saksalaisessa yliopistossa.
Tutkimusryhmäni keskittyy wikeihin ja ohjelmistokehitystyökaluihin. Tarkoituksenamme on tehdä vakaampaa teknistä pohjaa molempiin, eli tehdä wikeistä jäsentyneempiä ja mahdollistaa organisaatioiden ohjelmistokehitysprosessien kuvaamisen siten, että niitä voidaan käyttää uudelleen eri ympäristöissä. Käytämme Linuxia, tällä hetkellä enimmäkseen Debiania, Ubuntua ja openSusea, mutta meillä on myös Fedoraa käyttävä kannettava tietokone.
Hircus. Siihen liittyy mielenkiintoinen tarina. En ole kovin kiinnostunut astrologiasta, mutta olen sattumoisin syntynyt saman länsimaisen ja kiinalaisen horoskooppimerkin aikaan. Olen länsimaiselta horoskooppimerkiltäni kauris ja syntynyt vuohen vuonna. ”Capra hircus” on tietääkseni vuohen tieteellinen nimi. Nimimerkkini on ironiaa astrologiasta ja kaikista evankeliumien kirjoituksista, joissa käsketään ihmisten olla ennemmin lampaita kuin vuohia – vaikka en olekaan kovin kapinallinen :)
Tavallaan jo ennen kuin Fedora Extrasia oli olemassa. Sain ensimmäisen kerran tietää Linuxista tietokonemessuilla Singaporessa. Minulla ei ollut edes omaa tietokonetta vielä silloin eikä siihen aikaan ollut live-CD:eitä tai -USB-tikkuja, joten aluksi Unix-/Linux-tietoni olivat täysin teoreettisia ja perustuivat kirjaan, jonka mukana tuli Calderan CD. Sain oman tietokoneen vuonna -98 ja – näistä grafiikkaongelmista tuli toistuvia – siinä oli Diamond FireGL -kortti. Ensimmäinen Linux, jonka asensin siihen, oli RHL… 5.1 tai 5.2 – ja tietenkin X käynnistyi 640x480-tilassa 16 värillä. Tuota konetta käyttäessäni käytin siis lähinnä SuSE Linuxia ja Debiania. Alussa totuin siis sekä RPM-pohjaisiin jakeluihin että Debianiin. Red Hat 7.x:n aikoihin käytin pääasiassa Red Hatia. Jossain vaiheessa aloin tehdä takaisinsovituksia tietyistä Fedora Rawhidessä olleista paketeista, Evolutionista ja muutamasta muusta. Niihin aikoihin Warren Togami aloitti Fedora-projektiaan ja keskustelimme siitä muutaman kerran. Sitten projektista tuli Fedora Extras ja sitten Coren ja Extrasin erottelu lopetettiin. Hassua, että en edes enää käytä Evolutionia, lopetin, kun IMAP-tuki oli täysin rikki muutama versio sitten. Pidin kuitenkin siitä, että Evolution toteutti ensimmäisenä hakunäkymäkonseptin ja olen keskittynyt siihen Fedora-paketoinnissani. Siistejä juttuja.
I have this certain fascination with electronic communication media. and in a way, most of the early networking concepts have Unix heritage (the Web got started on a NextSTEP box, I believe, but that's still Unix-y). At a certain point I decided to use mostly Linux unless I can help it (my Windows partition is there for flashing the BIOS, mostly) and needed to make sure that I can still blog, chat, etc. as I normally would. Thankfully it is an easier task now. I tend to be old school when it comes to Twitter-like services. I use them either directly from the site, chain it through another service (e.g. Ping.fm to broadcast to several microblogs, and HootSuite to poll my blogs and automatically forward them to Ping.fm), or use command-line tools like Greg KH's excellent bti (a Twitter & identi.ca client that enables you to make posts from a Linux command prompt called bash.)
Pikaviestintään suosittelen ohjelmaa nimeltä Pidgin. Sille on joitakin hienoja liitännäisiä:
Pidgin's IRC client is quite decent too.
For blogging, I used to use Drivel - which supports LiveJournal, WordPress, and other blog systems - but sadly it's not maintained anymore upstream. But the browser-based ScribeFire works really well, and now works on Chrome in addition to Firefox. It supports pretty much any blog platform you can name.
Linux users can video chat with each other (on desktop Linux as well as on mobile devices such as the Maemo-based Nokia N-series). but interoperability with Windows/Mac Google Talk users is a bit problematic. Pidgin used to crash when a GTalk user initiated the video call with 32-bit Linux, no problem. With 64-bit Fedora, the instructions for getting Flash working is, I'm afraid, a bit more complicated. We document the process quite well - and I believe Firefox will redirect users to the Adobe site where they can download Flash, but alas it's not as automated as on Windows/Mac (the Flash download site can be quite cryptic if you don't know what RPM and Deb files are.)
AJAX works just fine. I've only recently experienced *one* social networking tool that was broken on Linux - Delicious.com's Firefox plugin. Delicious is a social bookmarking service, but you can also set your bookmarks to private, which is neat if you use more than 1 type of browsers and you can't rely on the vendor-provided tools. One recent update broke Linux support - you can install it, but your bookmark list is empty - and the developers acknowledged they did not test it on Linux! But older releases continue to work, and they fixed the issue within a couple of weeks.
One really cool thing about Fedora being a leading-edge distribution is, even by sticking to stable releases you get new functionality not long after they're announced. Fedora 14 will have the new WebM codec, for instance. I believe YouTube is encoding all its new HD videos in it as well as in H.264.
Fedora is probably one of the best choices as a development platform, thanks to the virtualization technologies available. Red Hat leads KVM development, and Oracle's VirtualBox (mostly open-source, apart from some USB and 3D support) is also available, though only for stable releases. So if you want to do all your testing from a single machine, Fedora is probably a really good choice. KVM is the only virtualization solution I know that flawlessly support BSD guest installations, and Richard WM Jones (Red Hat employee) is working on a really cool project, guestfish, that let you access guest images from the host OS.
You don't have to, and I believe it can even mount LVM, and let you hex edit parts of the disk image, etc.
I do believe we have Ruby on Rails, and the more popular Python-based platforms (TurboGears, Django, etc.).
For code editing, it depends; I'm not wedded to a single editor. For social media development especially, I'd say the code editor you should use depends on what framework you use for the overall platform. If it's Java, then you can use Eclipse or Netbeans (we have both in our repositories, though if you want to install third-party features, our Netbeans packaging is probably easier to use; if you want to customize Eclipse I suggest downloading it from eclipse.org). For Python it's either Eclipse, Netbeans (both have good Python support), or - my favorite - using ipython on the console, coupled with Emacs for editing the source. ipython is an enhanced python interpreter shell. You get syntax-highlighting, code completion, etc. Let's not forget gedit. our default GNOME desktop uses a shared library for syntax highlighting, so gedit, Anjuta (a GNOME IDE) and other apps all get support for the same languages. We ship a C#-like language, Vala, that's used by some of our key desktop applications (the Shotwell photo editor, Pino microblogging client), and there's a really good plugin for gedit that turns it into a Vala IDE (with code completion etc) by the folks who develop Shotwell. It's called Valencia and it's currently being reviewed, after which it should be in Fedora 13 and Fedora 14.
I'm partial to Django-like platforms. the ones where you don't really have to know about all the different components that it's composed of -- they should just *work* together. So I'd say Django for Python, and if you want something more scalable, the Play Framework for Java/Scala is really cool. Both let you deploy to Google's App Engine too, so you get free hosting of your web application (App Engine has two backends; the Python one is a slightly-modified Django and the Java one basically let you use your own framework, subject to some limitations.) The beautiful thing about the Play framework is that it's the first Java-based framework I know that works just like Python / Ruby on Rails. You also don't need to manually run the compilation step, and it auto-detects changed code.
For an IDE, I'm a Netbeans & Eclipse fan. If you're a J2EE developer, Netbeans just works with your Ant and Maven project - and you can even edit the configuration files within Netbeans.
Netbeans has good support for Python, so sure. You normally just start Django from the command-line, though, and it automatically detects whenever the code has changed so you don't need to restart your development server.
For collaborating, it depends. Email is probably still the best option. At work we use Git for version control, and we configure a post-commit hook to send email notifications to the developers in that project. So, if there's any problem with a particular commit we can create a thread off the commit email.
Just a friendly announcement that, as someone with really bad judgement when picking video cards myself, be careful when picking a new laptop. :) If possible, try it in the shop with a live CD or try the live CD on a friend's laptop, to make sure you'll be able to get proper 3D support.