Skip to main content

the avatar of Andres Silva




This is one of my recent collection of creations for the project. Check it out! Now that many things are about to happen for the community such as the release of openSUSE 12.3, openSUSE Conference in Greece and later on, openSUSE Summit. I hope that some of these images make a change for who participates of the community. I always try to put my best efforts in creating something that reflects the feelings and fun of this community.

Thank you


anditosan's Story

a silhouette of a person's head and shoulders, used as a default avatar

Working around the reverse callback limitation on Xamarin.iOS

There's one annoying technical limitation of Xamarin.iOS if you have to pass a C# delegate instance to unmanaged code. It's not new, and it's well documented.

But still, having to flag the callback with an attribute and no instance method makes an API hard to use if you don't care that much about the internals of the library you're consuming.

I'm currently polishing the Chipmunk binding for Xamarin.iOS, and the cpSpace has some functions taking callbacks, like cpSpaceEachBody or cpSpaceAddPostStepCallback.



The C# API exposed looks like this (for the PostStep callback):

public class Space {    public void AddPostStepCallBack (Action action, Body body);}
If we could lift the restrictions, it could take lambdas or anonymous methods. This is how I did it behind the scenes:
public class Space {
    delegate void PostStepFunc (IntPtr space, IntPtr obj, IntPtr data);
 
    [MonoTouch.MonoPInvokeCallback (typeof (PostStepFunc))]
    static void PostStepForBody (IntPtr space, IntPtr obj, IntPtr data)
    {
        var handle = GCHandle.FromIntPtr (data);
        var action = (Action)handle.Target;
        handle.Free ();
        action (obj == IntPtr.Zero ? null :  new Body (obj));
    }
 
    [DllImport ("__Internal")]
    extern static void cpSpaceAddPostStepCallback (IntPtr space, PostStepFunc func, IntPtr key, IntPtr data); 
 
    public void AddPostStepCallback (Action action, Body obj)
    {
        var data = GCHandle.ToIntPtr(GCHandle.Alloc (action));
        cpSpaceAddPostStepCallback (Handle.Handle, PostStepForBody, obj.Handle.Handle, data);
    }
}
Static callback? : Check!
Flagged with attribute? : Check!

This is possible because of the free to use data pointer as last argument of the native function call. We don't expose it to the use, and hijack it to pass the GCHandle ptr of the callback provided by the user.

Hope it helps you.



Liked this? Want more? I'm available for contracting, so contact me.




a silhouette of a person's head and shoulders, used as a default avatar

How it's made - OBS


As all human beings I am curious by nature, I always liked to see how things are made and listening to stories of what lead people in doing interesting stuff. When I was in Nuremberg for the Marketing hackathon, Jos (Poortvliet) told us that there would be that meeting with the OBS guys and have a talk about everything around it so that we could wright a series of articles in order to promote it. After a few sentences I understood that we would start from the day that OBS was conceived until the present day. For me this was a conversation I had to be part of.

The day after Jos told us about the meeting we were gathered in a room with the guys that created the OBS magic. Some of you might say that I become excessive putting the word magic next to OBS but be patient to read the upcoming OBS series of articles and judge me then.

We gathered in the room and we started recording with our laptops and our mobiles so that we would be sure that we will not lose any part of this conversation for the articles we will prepare. 

We started by asking typical stuff like 'How it started?' and 'What created the need for a tool like that?' but the answers, along with the flame on the eyes of people answering was something that it is very difficult to describe in written language, filled the room with energy. 

What originally started as an interview so that we would gather information to write some articles became a six people group telling a story that was closer to the atmosphere of a fairy-tale than anything else. Soon there was that flow that questions were unnecessary and everything was coming out naturally.


Listening to those peoples stories and seeing the passion in their eyes made me envy them for not being a part of it. Yes OBS is a great project and there are a lot of interesting stuff you can do with it but at that one hour that I was in that room this was the last thing that I cared about and the last think on my mind. It was all about passionate people who love Free Software, who love giving stuff back to the community and who love every little step while doing it. It makes you realize that what most people see as letters and numbers and variables in a part of code other people see a part of themselves and a way to individual freedom. Someone once told me that the basic difference between a free software programmer and a proprietory software programmer is that the guys in free software most of the time see their code more as a child and less than some lines of code. I could understand this but I had never really felt it. This hour I spent in the 'Rome' room at SUSE offices in Nuremberg with those guys taught me more things about Free Software Programming than all the conferences and all the talks I had been part so far. Feel Free to suppose that I am making this thing bigger that it really was, for me it was just an experience I had to share with those who will get it.

a silhouette of a person's head and shoulders, used as a default avatar

Hacking around with the Geekos (openSUSE 12.3 Marketing Hackathon)

kde_party_group_foto

Event

From 31st of January to 10th of February I participated in openSUSE 12.3 Marketing Hackathon.   The Hackathon took place in SUSE Headquarters [Nuremberg,Germany] from 4/02 to 10/02. Before that we participated in FOSDEM by promoting to the crowd the openSUSE Project and the oSC13 as well. Our participation in FOSDEM was really successful cause people asked a lot of questions around the upcoming release of openSUSE and expressed their interest for this year’s openSUSE Conference.  Thanks to Carlos we spread out and informed a lot of people about the oSC13.

Apart from that this year I spent more time in joining presentations. I admit that I liked more FOSDEM 2013 than FOSDEM 2012 because I found the presentations (Developer rooms especially) more interesting.

After FOSDEM we travelled to Nuremberg for the Marketing Hackathon . On the way back to Nuremberg I was impressed by the fact that openSUSE development continued even on the bus  with various hackers (SUSE Employees)  sitting behind their laptops, building packages. Apart from software development we drunk a lot of  openSUSE beers.  🙂

Arriving to Nuremberg , after FOSDEM , we begun to work in the 12.3 RC1 release. SUSE Employees helped us by providing all the necessary equiqment [ok , coffee , meeting rooms etc]  since we worked in the SUSE offices. Interacting with people from the company was really interesting , and i admit that during a release there is a lot of work to be done (bug fixing , artwork, ,writing , promotion , etc) .

Apart from the release we enjoyed a presentation by the SUSE Documentation team  , where we tested  a demo of the new ActiveDoc tool.ActiveDoc is used for the documentation of openSUSE and SUSE as well. Furthermore we had visits from company management , from Ralf Flaxa, VP of engineering, and Roland Haidl. During these meetings we discussed about issues  around openSUSE Project , and how the project can be improved. Ralf Flaxa and Roland Haidl thanked us for our work and they confirmed their willing to help the openSUSE Project as much as they can.

As the KDE 4.10 released during the Marketing Hackathon we all joined the KDE 4.10 release party (in Wednesday). KDE president Cornelius Schumacher and Klaas Freitag, (ownCloud Senior Developer) joined us to the party. We had really interesting discussions about various aspects (KDE , ownCloud ,oSC13 etc).

Work

Here i give a brief summary of my work

– 12.3 Screenshots (Screenshots and related wiki page) [although my laptop was broken for a while]

– 12.3 Package list and Feature (the last days)

–  12.3 Social Media messages for RC1 (and the final release as well)

– 12.3 “We are Hispanohablantes”  , a new project begun , willing to centralize the Spanish speaking communities in openSUSE. Here you can find the English [1] and Spanish [2] version of the wiki page. [if you come from a Spanish spoken country , you can add stuff in the “Information Table”.]

Conclusion

I could blog about this experience for years , but i prefered to write a resume of what i have in my mind 🙂
.  Obviously i would like to thank the following people (participants and SUSE Employees) :

Participants :

Kostas , Bruno (tigerfoot – “Champignon”) , Carlos (victorck), Carlos (CarlosRibeiro), Izabel (IzabelleValverde), Marcel (tux93 or “Silent Power”), Richard (ilmehtar), Michal (|miska|).

SUSE Employees:

Jos, Henne , Ralf, Roland,  James, Jan, Ludwig, Cornelius, Suzanne Augustin, Will, Christopher, Adrian, , Jurgen, Kenneth, Cassio, Alberto,
(if I forget someone ,please let me know 😉 )

I_love_Vietnam

And yes we all love Vietnam 🙂

You can find the photos of the event here and here as well.

And don’t forget!!

See you in oSC13 [18-22 July , Thessaloniki , Greece]  . As the Cfp is open don’t forget to register yourself and why not submit your presentation [or workshop]!!

A lot of Geekings to everybody,

“Power to the Geeko”

[1] https://en.opensuse.org/We_are_Hispanohablantes

[2] https://es.opensuse.org/Somos_hispanohablantes

the avatar of Agustin Benito Bethencourt

Distribution hacker wanted: join the openSUSE Team at SUSE

openSUSE Team at SUSE is looking for a hacker willing to work on the openSUSE distribution with us. You can find the details of the job opening at the SUSE career website.

So we are looking for a software engineer with experience in a Linux distribution or a recognized upstream project, that wants to work full time in our distribution and enjoys being part of a community effort. 

He/she will work in English and attend to community events so some international traveling should be expected. We would like to increase our team located at SUSE offices in Prague (I love Prague), although Nuremberg/remote work are also options.

If you are interested, apply through the SUSE career website. Please do not forget to provide us links to your code and references if you have them. There are many other interesting openings at SUSE for senior and junior professionals, specially software developers. Put an eye on the Career page at SUSE website.
the avatar of Klaas Freitag

ownCloud Meetup in Nürnberg

Next week a part of the ownCloud team will meet in Nürnberg for a creative time and we thought a little meetup would be cool. Join us for a relaxed evening where we will give short talks about current state of ownCloud, new features and the near future.

Let’s meet Wednesday, February 27th, 6:00 PM at the Nuremberg Coworking Space.

Talks (short, don’t be afraid!):

  • ownCloud overview by Holger Dyroff
  • The updated ownCloud 5 User Interface by Jan-Christoph Borchardt
  • Next steps for the ownCloud Desktop Clients by Daniel Molkentin

The evening closes with a get-together, your chance to meet the team and discuss in a relaxed atmosphere.

Everybody is welcome!

a silhouette of a person's head and shoulders, used as a default avatar

A letter to my mom


Hi mother
 I am writing you from Nuremberg. Of course you know by now from the pictures I sent you that I am not here to be a part of satanic cult or anything and as you can see my Geek friends I was telling you about are not aliens from a strange planet but actual people. I understand that some of the times it was hard to believe listening to me calling them as tux93 and tigerfoot, but here they are, you can see them on the photos.

 Now mother please forgive me but the truth is that I actually had 'some' alcohol but there is some law here that force to drink 'some' beer, at least that is what they told me and I did not wanted to have any problems with the law.

 To answer your question, what I liked and not in the 12.3 Marketing hackathon...
Dear mother I had so much fun that it should be illegal. I also learn a lot about doing things but there were some times that I had no idea what I was doing. Now I was among old openSUSE friends from previous hackathons and in a few new ones. Once again the new guys were pretty cool and we had a great bonding as a team. We also had a KDE release party, ok I know that there were a lot of KDE parties around but we were the only ones that had The KDE e.V. president making the presentation, so... Jos (you know that long hair Dutch fellow who it a lot of cheese) also made a presentation there but who cares about him anyway...One of tthe important things I have to tell you about this party mother is that Augustin exposed us as 'The Greek Mafia' so send someone here to take care of him.

 I really liked Hacking for a whole week, learning new things and actually contributing with a more immediate way. We had some meetings with really interesting things. We even had a meeting with Roland Haidl and he heard what we wanted to tell him . What I did not like was that some people did not manage to come and the weather. I mean mother really the last time i was here it was like 25 degrees and this time it was all snow and rain.
So Mother I will soon be back home and I miss you
Just in case I am not, look for me in Brazil
Hugs and kisses
Your son
Kostas
a silhouette of a person's head and shoulders, used as a default avatar

Easily install Steam for Linux in openSUSE

Gamers and Linux enthusiasts have been all abuzz about +Steam for +Linux since it was announced by +Valve  . On Valentines Day +Valve Linux celebrated its official release with an update and a spectacular sale of Linux titles at 50-75% off regular retail price. This sale is good through the 21st of February.

Thanks to the hard work of our community members, our very own installer has been added to the Games community repository. This installer primarily fetches the archived binary provided by Valve and installs it transparently without any needed user interaction. It installs like any other package in openSUSE. This link will take you straight to the page in +Open Build Service ; Steam for openSUSE. Simply use the "One-Click Install" and get ready for an amazing gaming experience.

I've been playing with the Steam client in beta for a while and had previously been unimpressed by its frequent freezes and failures to launch my games (I acquired the keys through my +Humble Bundle  purchases). However, as of the 14th (Valentines Day) the update pushed by valve fixed all these complaints, and i'm very pleasantly surprised and can see myself being a very happy Steam user for years to come. I would certainly recommend to anybody to go ahead and give Steam for Linux a try. My only complaint to date is how very few of my Linux titles I purchased (and have Steam Keys to) have been ported to Steam. I hate having a myriad of installers putting things in odd places, and would prefer to use Steam for all of my proprietary games. Hopefully this will only be a brief matter of time until it is resolved.

My "commercial" showing how easy it is to get Steam for openSUSE


For those of you whom are less familiar what Steam is, it is far more than a mere marketplace for games. It provides DRM (bear with me) for the games, allowing you to run the games on any device you own (I assume they are willing to allow that due to the way Steam DRM works). It also provides integrated forums, guides, and social elements making it easy to connect with your friends and find people to play with. Of course, there are also the famous Steam sales, where you can get amazing titles for a fraction of normal retail. If you are worried about the freedom implications of Steam and its games and DRM, you may be interested in this article with musings from Richard Stallman.

a silhouette of a person's head and shoulders, used as a default avatar

Announce: ATOMac (Automated Testing on Mac - Mac LDTP) 1.1.0 released

The ATOMac team is proud to announce a new release of ATOMac.

About ATOMac:

Short for Automated Testing on Mac, ATOMac is the first Python library to fully enable GUI testing of Macintosh applications via the Apple Accessibility API. Existing tools such as using appscript to send messages to accessibility objects are painful to write and slow to use. ATOMac has direct access to the API. It's fast and easy to use to write GUI tests.

Changes in this release:

Many changes and fixes to the LDTP layer. After four months of use internally at VMware and elsewhere, many LDTP changes and fixes have been incorporated. More APIs are now supported for greater compatibility with LDTP on other platforms. Please see the changelog for detailed information on these updates.

A detailed changelog is available.

Download source

Documentation references:

Sphinx documentation is being uploaded. In the meantime, please see
the readme at the bottom of the github page listed above.

Report bugs

To subscribe to ATOMac mailing lists, visit

IRC Channel - #atomac on irc.freenode.net