In July I announced that I will try to switch to Linux. I actually needed two months and a broken laptop to make the transition.
The main reason for needing longer then expected is that I have files which I need all the time. I had them on my laptop and therefore I switched frequently to it. As my laptop died a few weeks ago I had the opportunity to think about a better solution.
I solved this problem by using Git to synchronize my data via a Git account.
The setup took a while time because I wanted to use http / https and EGit does currently not support https authentication and msysGit had a bug for which I need to find a workaround. Also github had a bug which fortunately was fixed fast.
It also took me some time to migrate the build infrastructure for vogella.de to Linux. Partly because I forgot how I did the setup and partly because I was not always as strict as I should have been with lower and upper case spelling. Windows is very forgiving in this sense while Linux is not.
So do I like it? I love it. First of all working on my Ubuntu machine is incredible fast. This might not be a big surprise as the machine is relatively new. But I also think that my crashed laptop had an issue with the harddisk (with finally failed). If I did I/O the whole laptop basically froze which was very, very annoying.
One effect I did not foresee was that I now work “geekier”. On Windows I rarely used the command line. On Linux I alway have a few terminals open and do some stuff their. Using Ubuntu I could also finally compile OpenJDK. I also now started using cygwin on Windows for some tasks.
Of course there are new bugs for me, e.g. Ctrl+alt+down arrow is not working on Linux .
In total I’m now a happy Ubuntu user at home. I believe the July monthly challenges was a success even if it took two months.
Since beginning of last year I participate more or less actively in the Java User Group Mannheim. Unfortunately the former main contact of the Java User Group Mannheim Alex Hanschke has moved out of the area.
Benjamin Muskalla and myself volunteered to help organize the JUG Events. Therefore Benny and I will as of now try to find great new speakers and setup cool events. I think we are starting very well, as we are proud to have Matthias Sohn and Stefan Lay speak about Git and EGit on the 02.Sept. Git is one of the leading distributed version control systems and EGit a team provider for Eclipse.
Matthias and and Stefan are both committers in the EGit project. Details on Matthias and Stefan and the presentation can be found on the Majug Event Announcement. As usual we organize to have drinks after the event and hope Matthias and Stefan will be able to join so that you can bugger them with questions. The presentation will be in German.
Rumors are that we will see a real merge via EGit on this event… Hope to see you at their.
I learned from Steffen Pingel and Ekkehard Gentz that Mylyn has the ability to save local tasks outside the workspace. This is hidden under advanced in the Preferences.
This allows you to put your local tasks outside your workspace and versionize them with git. This way you can use git to move your local tasks between machines. I really like this as I frequently use different machines and now I can not only share source code betwee them but also my mylyn taslks.
As Steffen told me, simultanous access to the Mylyn tasks might cause task corruption but I don’t think that is an issue for me as Git takes care of conflicts and I do not have two machines writing to the same local file.
Fun times with Git and Mylyn!
If you are using Eclipse you properly using Mylyn. I recently got a new machine and wanted to migrate my local Mylyn tasks from one computer to another.
Local tasks stored in your workspace in .metadata/mylyn/tasks.xml.zip. The context for local tasks stored in .metadata/.mylyn/contexts… look for files labeled local-X.xml.zip, these have the context. You can back up the entire Mylyn data directory and put it into the same place on your new computer.
Worked well for me!
Thanks to David Shepherd for the tip via twitter.
If you ever wanted to copy the full workspace to another machine you may have noticed that a billion generated files (e.g. bin) are copied and that this takes a long time. If you start Eclipse with the -clean option the workspace will regenerate all file again.
You can avoid this bye de-selecting in the “Build automatically” in the preferences under General -> Workspace.
If you now select Project -> Clean -> All and de-select “Start an Build automatically” in the dialog you end up with a workspace without the files of the build process.
As of now all vogella.de tutorials contain a flattr button.
Flattr is a mirco payment service which allows you to send money to free websites you like. If you are website producer you can put a flattr button on your website and also get flattered via flattr. With flattr you decide per month how much money you want to donate and if you like a website you just press the button. Your money will at the end of the month divided between the websites you liked.
I’m maintaining my website in my private time. If you like the content of vogella.de it would be great if you could support me via flattr.
Unfortunately the Eclipse team provider EGit does currently not support to use HTTPS for cloning and pushing.
Fortunately the Git command line supports this (under Linux without problems).
git clone https://firstname.lastname@example.org/vogella/de.vogella.rcp.example.git
// do some changes
git push https://email@example.com/vogella/de.vogella.rcp.example.git
If you are on Windows and if you are using msysGit then you may receive the following error:
error: error setting certificate verify locations:
while accessing your_repo
If you have this error you can disable ssl verification to solve it.
git config --global http.sslverify "false"
After this change cloning and pushing works via https on Windows.
Alternative the following should also make msysGit work, but I didn’t test these approaches.
copy C:\Program Files\Git\bin\curl-ca-bundle.crt to c:\bin\curl-ca-bundle.crt
git config --system http.sslcainfo \bin/curl-ca-bundle.crt
The full discussion of the msysGit issue can be found here.
[Update:] If you are behind a http proxy you can set the proxy via the following command:
git config --global http.proxy http://proxy:8080
// To check the proxy settings
git config --get http.proxy
Are you around the Dresden area?
If so it would be great if you join my presentation about Eclipse 4.0 / Eclipse e4. The german title roughly translates into “the unexpected simplicity of developing Eclipse plugin and Eclipse RCP applications”.
The talk will be in German and details can be found on Saxony Website. I’m looking forward to meet you.
Eclipse has the option to put the semicolon at the right place in your coding.
For some very annoying reason my workspace had this feature disabled. In case you have the same activate it via the following: