January 30, 2015

New version of Inkscape available

So excited that the new version of Inkscape is now finally out! I have been using development versions of Inkscape 0.91 for over a year now, and it is packed full of useful new features and improvements.

The updated package for Fedora should be hitting the repos soon, but the builds are available in koji if you can’t wait and want to install directly from there. I also did a writeup about the release for Fedora Magazine outlining some of the features that I use on a daily basis in Inkscape 0.91.

 

 

GNOME Builder Robot

This is a little render I recently did of the GNOME Builder robot by Jimmac using the Blender Freestyle renderer.

Inkscape 0.91 built and ready for testing in Fedora 21

Earlier this week, the Inkscape upstream made the final tarballs available for the long-awaited new 0.91 version of Inkscape. This version has not been announced by upstream yet, but thanks to the awesome Fedora Inkscape package maintainer Limb, this version is now available for testing on Fedora 21. Please try it out, and give karma to the package in Bodhi.

This updated package is the next major release of Inkscape after the 0.49 version of Inkscape that was released several years ago.

This major update provides many additional features and enhancements as well as hundreds of bug fixes and stability improvements. A detailed list of the new features in this version of Inkscape is available in the upstream release notes

Some of the notable new features in Inscape 0.91 include:

  • A new measurement tool that allows the artist to measure distances and angles in their drawing in realtime.
  • Updates to the text tool including the ability to customise the unit of measurement for text size, and support for choosing font style variants in the text toolbar.
  • The align and distribute dialog now features a new set of features that allow the user to exchange position of selected objects.
  • A new “Select Same” that allows an artist to select objects that have the same properties as the currently selected object. For example, you could select an object that has a fill of blue. Then, using the new feature select all other objects in the drawing with a fill set to that same shade of blue.
  • A new path effect, Power Stroke that allows you to easily create variable width strokes.
  • The Gradient view in the fill and stroke dialog now displays a list of all the gradients in the document. The list displays the gradient, the gradient name, and number of uses of that gradient in the document.
  • The new greyscale display mode that shows a preview of your drawing in greyscale.
  • Improved rendering performance with the new Cairo-based renderer, and the addition of multi-threaded rendering of SVG filters
  • A new feature in the node tool (targeted at type designers) that allows you to insert new nodes at the selected segments extreme values.
Corebird 0.9 now in Fedora for testing

Version 0.9 of Corebird is now in the updates-testing repo for Fedora 21 and Rawhide.

Please check it out, test and give karma!

This update makes this already awesome twitter client much better, with a bunch of updates, including:

  • Mentions, hashtags and links now get highlighted directly in the dialog where tweets are composed.
  • The avatar icon in the top left of the main Corebird window is now clickable. When clicked, every account configured in Corebird is displayed in a list, allowing a quicker way of switching accounts.
  • The dark theme setting in the Corebird user preferences is now removed. If you previously set the dark theme, it will continue to work, but is not really a supported feature of corebird, so the theme may render strangely. It is also still possible to turn the dark theme on or off using the GNOME dconf editor.
  • The arrow keys on the keyboard can now be used to navigate between images if a tweet has multiple images or videos attached.
  • Avatars in tweets and profiles now show if the user is a Twitter verified account.
  • Corebird now has a back button in the main window to easily navigate between panes.
  • Many tweaks to the user interface, including better spacing of elements in the user interface, and updated icons.

January 29, 2015

Event report: Design FAD, Westford

We had a fantastic Design team FAD between 16-18 January at Red Hat’s Westford office. For me, it turned out to be an opportunity to (finally!) meet in person with my mentor Emily, and Mo, two people I’ve been in touch with over IRC/email like forever. Among others physically present were Marie, Sirko, Suchakra, Chris, Prima, Zach, Samuel, Langdon, Paul, Luya and Ryan. Kushal showed up remotely albeit the odd hours in India.

Mo on the whiteboard

Mo did a great job outlining topics we needed to discuss on the whiteboard the first day. At first it looked like a lot to me and honestly I felt like we’d never get to half of them. At the end of the day, to my (pleasant) surprise, we had covered most, if not all of the planned topics. We spent quality time evaluating what the team’s goals are and prioritizing them. We revised our ticket flow into a more structured and well-defined one. We discussed newbie management and how to deal with design assets.

Random discussions

Suchakra, Zach and I worked on redesigning askfedora. What was supposed to be a low-fidelity mockup winded up being pretty hi-fi, since I wanted to take Inkscape lessons from Suchakra and we dug into the details. Suchakra has blogged twice about it, so if you’d like to learn more, find the first one here and the second here.

Askfedora mockup - photo courtesy Suchakra's blog

If we manage to squeeze in time, we’d like to work on the redesign in the weekends. Another group focused on cleaning tickets, so as you’d imagine, lots of trac emails getting tossed around. When I had a look at the design trac after they were done, it seemed like another trac altogether!

Ticket discussions

GlitterGallery was also brought up. What I took back for the GG team from the FAD was that our main priorities are improving the file history view and SparkleShare integration. On my return, I’ve already started work on a new branch.

Quick GG status demo

Emily and I intended to do a GG hackfest once everyone leaves on the final day, but we had transportation issues and couldn’t continue. To make up for that, we held an IRC meeting yesterday to assign tasks to Paul, Emily, Shubham (new kid on the block), and I. I’m excited about how the repo is active again!

Productive FAD for everyone :) Thanks to the local organizers and Gnokii, super worthwhile.

(Gnokii, sorry I sucked at gaming!)

Gnokii playing Champions of Regnum

(Photos courtesy Prima).

January 26, 2015

gimp-paint-studio addon soon on Gnome Software Center
Image speaks itself. gimp-paint-studio package just got an metainfo needed for Gnome Software Center as add-on for Gimp based on related Richard Hughes' blog. The updated package will be shortly available in Rawhide and also in Fedora 21 updates-testing repository. It will not be included for Fedora 20 due  to the preview release of Gnome Software lacking addons support. Next step will be contacting upstream adding that metainfo.  Hopefully other add-ons maintainers for applications such as Inkscape and Blender will do the same to bring a richful experiences to users.

January 25, 2015

Event report: IIT Madras Hackfest & Release Party

This year started for me with a 3 nights Hackfest workshop at Indian Institute of Technology, Madras. While the workshop strayed completely off my goals, the post event commentary seems to indicate that attendees had a good time.

Students were screened for attending based on a general-FOSS questionnaire, followed by their submissions to a set of programming tests set by the mentors. I mentored on behalf of the Fedora Project. Other mentors included Anoop & Kunal (Drupal), Kunal (Wikimedia Foundation) and Nalin (iBus Sharda Project).

Mentors group photo

I began to worry because almost everyone showed up with Windows machines initially, and I had planned intensive exercises with no time allocated for setting up a Linux distribution. However, it wouldn’t have made a lot of sense to dive into programming activity when students were new to the idea of a distribution, command line and installing packages. Which is why I decided to dedicate a whole lot of time explaining all of those things with patience; from my experience, I’ve always had folks quit eventually once they get back home because they couldn’t set up their development environment. At least I got to distribute some fresh Fedora 21 DVDs that way ;)

Kids happy with their DVDs

Half of first night was spent explaining software philosophy, what it means for a project to be FOSS, what it means to be part of a community - that kind of thing, after which I had students install packages required for the rest of the event. I followed it up by an extensive workshop on Git. Most of them picked it up rather well. I would have gone ahead further with explaining colloboration over GitHub and the general workflow, but they seemed too sleepy for another hour of devspeak. 5am!

By this time, I realized that goals I had set weren’t going to be met, so I made a change in plan. Originally, I had thought I’d introduce them to Python and Flask while I pick it up myself (since that’s the stack used in most of Fedora’s infra projects), but this was a complete newbie crowd. I stuck with what I’m comfortable with. After spending time collaborating over GitHub on some projects we started, I had the students pick up Ruby the second night. I explained the concept of programming libraries, how they’re organized and shared, and how they’re hackable. A ruby library I once wrote would solve one of their screening process problems, I showed them how. The second day got me wondering what it’d have been like to have had a mentor help me when I got started, because I remember installing and understanding RVM/Ruby the first time took me two weeks (these kids had it set in minutes). It wasn’t until for GlitterGallery that I tried it again!

Whiteboard Musings

On the way from the airport to the Uni, I thought I’d showcase Shonku, but for the same reasons as I stuck with Ruby, I chose Jekyll. I was a little furious when I learned I’d even have to explain what a blog is, but given that everyone had a Jekyll blog running in a couple of hours, complete with some theme-hacks, I’d guess it was worthwhile.

Happy about the productive second night, I spent the following afternoon arranging cake for the release party. I was dissapointed at most of the major Chennai cake shops not having colors other than pink and green, I definitely didn’t want a Fedora Cake with the wrong colors! As a result, I had to overshoot the requested budget few dollars but I landed a nice one from Cakewalk, complete with a photoprint. Samosas and juice was courtesy IITM.

Cake!

Last night was Release Party and final night. All of us mentors got together in the larger lab to talk about things that were common across any community. I explained students what IRC is, had them lurk around our channels for a bit (and make a complete mess!), and showed them what it means to write proper emails to a mailing list (no top posting, etc). I did a brief introduction to Fedora.next and what it means to the community.

Speaking about Fedora.next

We had an exchange of thoughts, people shared their experiences getting to know about Free Software projects, and the overall atmosphere was pleasant. Our Fedora group left to our meeting room, where I had everyone create a FAS account, showed them around some of our wikipages, and provided them with tips on getting involved better. Finally, in a hope to get them started with Rails, I started talking about designing databases, how APIs talk to each other, and how web apps are structured in general. Well, we did end up cloning GG and setting it up, but I can’t tell how much of that they really understood ;)

All, in all, good fun.

Students: friendly group photo

(Thanks to Abhishek Ahuja for the great photos).

January 19, 2015

Mist wallpapers reloaded
A while ago, a set of misty wallpapers proved to be quite appreciated. Fast forward a year and some more, after another misty morning, here's a new set of free pictures ready to be used as walllpapers.
mist wallpaper
mist wallpaper
mist wallpaper
mist wallpaper
mist wallpaper
mist wallpaper
mist wallpaper

January 17, 2015

Fedora Activity Day Design Team - Day 1
A quick summary of the events. I met some Mofamiliar and new faces behind their IRC nickname including gnokii which is strong sense of humour and pro-active. The process was about reorganizing the Design Team by priority of the project. Mo covered the brainstorming where the rough task is pictured on https://luya.fedorapeople.org/fad-2015/
The complete edited version will follow soon.

January 14, 2015

Fedora Design Team FAD this weekend!

Design Team FAD Logo

Starting this Friday through the weekend, we’re having the very first Fedora Design Team FAD here at Red Hat’s Boston-area office. A number of design team members are going to come together for two and a half days and plan the basic roadmap for the design team over the next year or two, as well as more hands-on tasks that could involve cleaning out our ticket queue and maybe even working on wallpaper ideas for Fedora 22. :)

Join Us Virtually!

We want to allow remote participants (yes, even you :) ) to join us, so we will have an OpenTokRTC video stream as well as a Google On Air Hangout for each day of the event. We will also be in #fedora-design on irc.freenode.net, and we’ll have a shared notepad on piratepad.

Video Stream Links

OpenTokRTC

OpenTokRTC is an open source project for webrtc video conferencing; opentokrtc.com is the demo site set up by TokBox, the project’s sponsor. If you have issues with this feed, please jump to the appropriate Google Hangout.

Google Hangouts

Google Hangouts are unfortunately not open source, but we have set these up as “On Air” hangouts so you do not need to be logged into Google to view them nor should you need to install Google’s plugin to view them.

Other Resources

Chat + Notes
  • #fedora-design on irc.freenode.net – this is the official chat channel for the event.
  • Design FAD piratepad – we’ll take notes as the event progresses here; for example, as we make decisions we’ll track them here.

What are We Working on, When?

We’ll flesh out the fine details of the schedule during the first hour or so of the event; I will try to update the session titles on FedoCal to reflect that as we hash it out. (Likely, it will be documented on the piratepad first.)

Schedule
  • Schedule on FedoCal (note that FedoCal has built-in timezone conversion so you can view in your local timezone :) )

 

See you there! :)

November 24, 2014

OpenMovieNight Phnom Penh

On friday evening I had another OpenMovieNight, this time in Phnom Penh again at Development Innovations. It turned out as a good event we had around 40 participants and after an short talk about copyright, creative commons licenses, open source and free software, we had a lot of fun with the 33 movies I had chosen for the show.

As some already asked in IRC here is the complete list of movies I presented:

November 21, 2014

Inkscape Workshop Phnom Penh

I had yesterday the opportunity to give an Inkscape workshop at Development Innovations Cambodia in Phnom Penh. The participatns was only from several NGO’s, so called multiplicators and it turned out great. One day isnt that much time, to learn enough about Inkscape to use it in a professional way, but you can get at least the foundations to use it and learn more by yourself. But we had a lot of fun together and there was really some talented people amongst the 23 participants and the best two of them had already Fedora stickers on their laptop, so Open Source community in Cambodia begins to grow.

November 20, 2014

Workshop at Smallworld

I am still in Cambodia and after FAD I had on monday and tuesday an workshop about open source graphic tools at Smallworld Cambodia. It was great as always I like being there, its a nice place and its really nice to see how this young people organize to get an better education. The workshop was really good and there was really talented people amongst the particiants. I even managed to help one to install an Fedora on his laptop. The only thing bad was, that my tuesday morning started not so nice with being fetched in the elevator but I was still on time at the place.

So Fedora found again more friends in Cambodia, it might need time to get them to contributors but I have hope for it. At least they start using more and more free software and thats a good thing.

Shooting yourself in the foot, part 53326: Mozilla
Step 1: with bad design decisions one after another (Australis is a shining example of that) slide yourself into irrelevance;
Step 2: when market share goes below some threshold, the main sponsor diminishes (or suspend?) payments;
Step 3: in retaliation, hurt the users by forcing om them a sub-par alternative as a default;
Step 4: profit bleed even more angry users and go even faster into irrelevance.

Brilliant strategy Mozilla!

Myself, I am still using Firefox for the time being, but that's exclusively due to Gecko.

November 17, 2014

Fedora comes to University - Coimbatore Contribution Camp Report

At my University in Coimbatore, we run a tech{know}logy club, where we try to talk about interesting things in technology that normally isn’t covered in the classroom. We had a set of freshers join our club in August through the induction program. On Software Freedom Day in September, they were introduced to the idea of FOSS, open source communities and how it’s possible to contribute to them. When I went to Hanoi for our Ambassadors meeting, I decided to host a contribution camp in Uni sometime this year. Here’s the wikipage which has all the essential bits.

Background week

My friend Manjush and awesome (fresher) junior Sachin did a great job gathering a bunch of interested freshers and other students in our digital library for a half week before the camp took place. On the first day, they helped with installing Fedora (and other distributions of choice) onto the participants’ computers. They spent another day explaining what packages are and helping install the important ones. I showed up for the last two days and helped with Git and Jekyll.

Day One - Thursday

All of us agreed that the best way to motivate folks towards the camp was to screen a movie at our Auditorium. We were expecting 70, but were delighted to be able to host 180 students for Internet’s Own Boy: The Story of Aaron Swartz .

Movie Screening Poster, courtesy Anirudh Menon

For those initiated to the world of Free Software, the Startup Community, and DRM oriented arguments, the movie was a reminder of Swartz and the role he played in shaping part of our world. For the rest, they got to hear about terminologies, ideas and people they could later go and Google. Overall, the silence in the hall towards the end of the movie touched me. We invited everyone to join us for Day Two, and many did.

Day Two - Friday

We wanted to be less theoretic, so we structured our sessions that way. We expected 40 people, 45 showed up. I think if not for Google Club’s mindless discussion about landing jobs by marketing Google products, we would have had a larger attendance. Abhishek Ahuja started the day, speaking about FOSS in general - what it is, why bother, how it affects him. He followed it up with FOSS alternatives to popular software.

Ahuja talking about an interesting GIMP plugin he once discovered Sachin went next, he provided a rather neat introduction to the popular GNU/Linux distributions and the history/community behind them. One interesting thing he did was talk about desktop environments - something people get to hear about often but don’t really understand. From what I could understand, the audience was confusing distributions and desktop environments.

Sachin presenting various desktop environments

I’m actually quite proud of those who attended - the sessions were held after class because we didn’t have much choice, and it’s tiring for freshers who have to wake up early for Yoga classes and walk all the way to our session hall. I didn’t want them to sit and listen to us in hunger, so I arranged for snacks with the money I had asked Tuan to allocate for this event. Anyway, after a quick break, we were back to the sessions.

I’ve seen Manjush try the most distributions, so we had him speak about his timeline of the various GNU/Linux distributions he tried. At least to me who’s spent enough time doing tech support for my peers with respect to installing distributions, it was an entertaining talk. He spoke about problems with installation, problems with lack of language support, problems with community, problems with bundled software, problems with licenses and every other kind of problem one can think of. I was proud when he said he eventually settled on Fedora since it gave him everything he wanted.

Manjush talking about his difficulties with distributions he previously used

I did the last session: Fedora A-Z Guide (partially due to time constraints). Now our University provides us with some hurdles: fresher’s don’t get to use laptops, lab usage is fairly restricted, and girls can’t hang out past 7.30pm (after which anything we want to do happens). So I tried to pick up the non-technical bunch of areas, or areas with less technical intensity, while making sure they have the opportunity to participate over their smartphone. I explained how Wikipedia is everyone’s encyclopaedia, and how they can host their own. Through this, I tried to excite them about the power of a collaborative community, and how they can start contributing with whatever existing skill they have. Some students seem to have gone back home and edited few Wikipedia pages as well :)

Yours truly running through the A-Z guide

Day Three - Monday

Come final day and we had a new set of faces. The attendance was 40. The demand seemed to be the Fedora A-Z guide, so I went over it once more, this time talking about fewer topics, but with more depth. For example, I showed them the badges project, traced a badge to the trac and showed them how the badges are designed and how they evolve. That seems to have gotten them pretty amused, because I met at least 3 people who said they’d like to contribute to badges.

Next up, I went over the hands-on bits from my FOSS 101 workshop at FOSSASIA Phnom Penh and SFD Hanoi. We had a brief look at Fedora and Mozilla’s contribute pages, OpenHatch and CodeTriage. I explained how we communicate - mailing lists, blogs, issue pages, IRC. I explained ettiquettes to follow when one is interacting with a community. It looked like a lot of people related with the usage of SMS lingo and hyper-exclamations (sigh, teens) - I got to see a lot of giggling and smiling around.

Good Procrastination and Bad Procrastination

After the usual snack break, it was time for my final presentation. When I asked a faculty for feedback on Day Two, he felt we were getting a little too technical for the freshers, and that we should do a funny/inspiring session. So I did one called “Good Nervous and Bad Nervous”, and it pretty much rocked :) I brought up lots of experiences from my personal life, what I learned from little things my friends in the Fedora and FOSS community taught me through their words and actions. I look forward to polish it and do the talk again sometime, or maybe even blog it.

So.. that’s the most of our camp, and we’re meeting again this evening to help people with any problems they have in getting started. I’ll be running a survey for the attendees later this week, and if the results seem interesting, I’ll share it.

Closing Notes & Thanks

  1. Although I’m excited about the enthusiasm everyone displayed, I wish the overall technical aptitude of the attendees was higher. I have another semester left here, I’ll try my best to fix that.
  2. I’ve started a reimbursement request on the apac trac (#161) for the food - I’ll upload bills and supply reports today.
  3. I’ve run out of swag now, so I need to figure out something before my Fedora Project workshops at IIT Madras in early Jan
  4. Thanks to: Manjush who kickstarted the sessions, the week prior to the camp. Sachin, our wizard first year who helped out pretty much everywhere. Proud of you! The University, for not making the permission process too much of a hassle to me. Everyone who attended, spoke or blogged.

November 12, 2014

Developments with Fedora Join Landing

If you went to Flock 2014 or attended it remotely, you’d remember I did a talk called Curious Case of Fedora Freshmen. One of the concerns raised in the session revolved around our current Join pages. Here’s the contribute wikipage, the first thing you’d land if you ran a Google search for Fedora Contribute. Then there’s the Join Page, which directs you to various sections within the Join wikipage. For the most of us who’re already involved with the project, these resources may seem as good enough guidelines for a newcomer to be on boarded, making efforts towards a new Join experience seem superfluous.

Over the course of the last year or so, I ended up participating in several meetups in my University, geared at getting people on boarded into FOSS communities. Out of curiousity, I’ve spent time researching how the first steps for several other communities are. Here’s Mozilla’s, my current favorite. Here’s Drupal’s. Here’s Wikimedia’s.

Our Join process could use some improvement. Inspired by some of the links I pointed out earlier, Gnokii’s slides on contributing to Fedora as a non-programmer, and my own experiences dealing with juniors in college and interested folks I meet at conferences, I’ve decided to go ahead and work on building a new boarding point for people who’d like to contribute to the Fedora Project. To start with, I have a couple of mockups for such a website, viewed on mobile. I also managed to find two enthusiastic students, who I’m mentoring with the development process. We had a super quick meeting the other day to spark things.

First Page Second Page

I wanted this post to serve as a notifier to the community, so in case you have any ideas/suggestions, feel free to add them into the comments section! :) I’ll try to keep sharing updates as the project progresses.

November 02, 2014

Big Week Cambodia

This November will be a busy month for me, I will fly to Cambodia again and bring some Fedora energy there. Its my second visit to this country and I look forward to it. I will have an talk at Royal University of Phnom Penh. RUPP is using Fedora for teaching there students basic skills for Linux. But as always, its teached more about technical stuff as what Linux or Fedora really is, projects driven by volunteers. RUPP gives me the great opportunity to speak to all there IT students about how they can contribute to Fedora and learn even more by doing so. But I will do some other things more.

  • On 14th of November I will join the Fedora Release Party Phnom Penh and help Somvannda Kong and Nisa Ban by giving an talk at this event. Truong Anh Tuan is giving another one. So it looks there will be an interesting program with talks and fun. Yes, Fedora 21 will not be released that day, but Beta will be available at least and we can show the features of the upcoming version.
  • On 15th of November I will help in the morning Somvannda in preparing the packaging workshop, which will be done that day remotely by Robert Scheck. So we will help the attendees to install all the necessary software for the workshop so that Robert can start without being enforced to take care of that.
  • The rest of November 15th and 16th I will join the FAD APAC, where the activities for the next year will be planned.
  • 17th and 18th of November I will deliver a 3 days workshop at Smallworld Cambodia, about doing Graphics with Free Software tools.
  • 20th of November I will be back at Development Innovations for delivering an Inkscape workshop to attendees from several NGO’s
  • 21st of November I doing an Open Movie Night at the same place, talking about free software and free culture and of course showing some examples what can be done with free software.
  • 22nd and 23rd of November I will do another Join Fedora workshop, as I did in February at Open Institute Phnom Penh. I hope that during all my presentations at RUPP, Release Party and so on, get enough people interested to start working for Fedora. In the workshop we will do all the  things together that are necessary to become a Fedora contributor.

Besides that activities I will have some meetings with friends and partners to organize some stuff in the future.

October 24, 2014

Winners of Wiki Loves Romania 2014

Organizing Wiki Loves Monuments in Romania this year was the hardest so far. Why so? We had a bigger budget, which allowed us to be more ambitious, so on top of the free photography contest for Wikipedia we had to manage a photo exhibition, a 2 day field trip, an additional contest for juniors, a team of volunteering interns and more. But it was rewarding, the results are notable: over 8200 pictures from 216 contributors.

I will tease with the top 3 photos from the contest, you can see all of them on our website.

1st place: Bogdan Croitoru with Monumentul triumfal Tropaeum Traiani
006 MG 6430 Tropaeum Traiani Adamclisi 006
2nd place: Dragoș Pîrvulescu with Fortificație medievală
Cetatea Râșnov, văzută din șoseaua Cristian-Râșnov.
3rd place: Zsolt Deak pentru Ansamblul bisericii evanghelice fortificat-vedere aeriana
Ansamblul bisericii evanghelice fortificat-vedere aeriana

You can also see the winning pictures, along with highlights from the previous editions and winners of the section dedicated to younger contributors in a photo exhibition opened for 3 weeks at the National Library in Bucharest. After that, the expo will move for a couple more weeks at Universitatea de Vest in Timișoara.

expo

October 08, 2014

Software Freedom Day Hanoi: Fedora Report

I was in Hanoi last month to participate in the APAC ambassadors meeting, as well as the Software Freedom Day event. This post summarizes notes from the trip.

APAC Ambassadors Meeting

On the first day, we had a meeting set up, to go through the current year’s budget, and discuss concerns with our respective countries. Tuan, Thang, Alick, Somvannda and yours truly were physically present. Gnokii, Kushal and Ankur participated for significant portions of time, remotely over IRC.

Fedora Folks posing at the SFD banner Photo: Unknown

We started with a general discussion about the APAC situation. Some (not sic) moments:

Tuan:

We have a lack of physical meetups among APAC folks.

Tuan was my roomate in Prague (at Flock), and we had a brief discussion about this. For most APAC meetings, at least until a few weeks ago, there would be very few representatives from Asian countries. When the budget was to be made for the current FY, Tuan announced over the mailing lists, but nobody showed up.

We discussed how this situation is improving. In November this year, a FAD is planned where folks have been invited to help with the budget planning. The recent meetings have run over an hour and we regularly have irregular meetings these days ;) While that is indeed trouble, it indicates interest, which is a good thing.

Kushal:

We should stop people from treating Fedora as a travel agency.

For context, here’s a blogpost around the same concern. Many Indians just want to become ambassadors, because they think that warrants them funds to travel. It’s of course great if people have been contributing in volumes and want funds to travel and speak about it - in fact, that’s encouraged. But in the recent times, Kushal says he receives mentorship requests, where the person doesn’t want to go through the mentoring process and wants to gain ambassador status directly. Kushal quoted examples and how the mentors team in India dealt with it.

Us hard at work Photo: Somvannda

Next, we worked on the most important bit: the budget. Alick volunteered to review and update Q2 and I helped with Q1. Alick got lucky since most events planned in Q2 were cancelled and there wasn’t much to review. Thang helped me cross-check events, swag requests and travel tickets from Q1.

After a lunch break, we turned to discuss Ambassador Polos and FAD Phnom Penh. I had been working on cleaning up the entire APAC trac for two weeks, but was unable to complete it because people hardly respond. Finally, at the meeting, with help from everyone present, the APAC trac is now Sparkly!

Software Freedom Day at the Uni

This was my second SFD, first being the one I helped organize in school. The way this one was organized was definitely more colorful - it started off with a Tux dance!

Alick had some swag flown over from China, so we used them up at our booth - it disappeared quickly, even before we had a chance to grab some of the folks and do some Fedora preaching. Nonetheless, it was super fun. I think we managed to direct some of the students to our Fedora room for the afternoon sessions. With the swag all gone and not much agenda for the rest of the morning, we headed to the main hall.

Sponsors being felicitated Photo: Alick

I’m going to have to quote the following line from Alick’s report:

Alick:

Sarup, Somvannda, and I are honored to be introduced as special international guests to the event (in English).

It was funny (although exciting) to attend the first few talks in the regional language. Well, we even attended the “How to contribute to Fedora without programming skills” keynote by Tuan in Vietnamese ;)

Come afternoon, we moved to our Fedora room. While Trang and I went around gathering folks to attend our sessions, Thang introduced the attendees to the Fedora Project - who we are, what we do, our goals, and why bother. He did his session in Vietnamese, and the attendees were visibly glued.

Next was Alick’s session on FOSS Software Defined Radio. I think he did a great job introducing the topic - it was a topic unfamiliar to me, but now I get the basics. I liked his idea of motivating through examples.

Finally, I did my mini workshop on FOSS 101. Prior to the event, we had a little debate around what I should talk about - GSoC? Git? Rails? From my understanding of the audience, I decided to do a diluted version of my FOSSASIA workshop. I introduced attendees to the idea of FOSS, put up quotes sent to me by Sumanah and Tatica (who I’ve always felt are great examples of our awesome lady FOSS activists) and showed them around IRC & the idea of mailing lists. I wrapped up with a basic introduction to Git (for which I should thank Alick for his help with the demos and Trang for the translation).

Arrangements

Day 0 was 18 September 2014. I was put up at the Hanoi Legacy Hotel near the Hoan Kiem lake. My roomate was Alick, who arrived later in the evening. Somvannda was at the hotel a day in prior. Tuan and Thang being the locals, were our awesome hosts. For dinner on all but the last day, we had street food near the hotel. On the last day, we had dinner with the VFOSSA folks, other organizers and volunteers.

The meeting was held on the first day, 19 September, at the VAIP office. The SFD event was held on the second day, 20 September at Hanoi University of Engineering and Technology.

Fun Memories

As you would guess, we had fun along the way! On Day 0, Somvannda and I went around Hanoi’s streets hunting for Egg Coffee.

For dinner, Tuan and Thang took the rest of us to a nearby food joint, where we tried out some rather interesting Vietnamese food. I (kinda) picked up how to use a chopstick too.

Newly acquired chopstick skills Photo: Me

On Day 1, after the meeting was over, we headed to the Water Puppet Theater - a unique concept. For dinner, we roamed the street for local food, followed by a brief trip to the Night Market in the Hanoi Old Quarter. I wish we could have revisited the place on the final day as well, but we couldn’t as the events ended late.

On the final day, we were joined by the awesome (hopefully significant future contributors) Trang and Phuong. Trang made us try “Corn in Fish Sauce” and we wrapped up with the usual beer :-)

It was definitely a weekend well spent and I’d like to thank everyone for the fun and productive time!

October 03, 2014

Software Freedom Day Hanoi: Fedora Report

I was in Hanoi last month to participate in the APAC ambassadors meeting, as well as the Software Freedom Day event. This post summarizes notes from the trip.

APAC Ambassadors Meeting

On the first day, we had a meeting set up, to go through the current year’s budget, and discuss concerns with our respective countries. Tuan, Thang, Alick, Somvannda and yours truly were physically present. Gnokii, Kushal and Ankur participated for significant portions of time, remotely over IRC.

Fedora Folks posing at the SFD banner Photo: Unknown

We started with a general discussion about the APAC situation. Some (not sic) moments:

Tuan:

We have a lack of physical meetups among APAC folks.

Tuan was my roomate in Prague (at Flock), and we had a brief discussion about this. For most APAC meetings, at least until a few weeks ago, there would be very few representatives from Asian countries. When the budget was to be made for the current FY, Tuan announced over the mailing lists, but nobody showed up.

We discussed how this situation is improving. In November this year, a FAD is planned where folks have been invited to help with the budget planning. The recent meetings have run over an hour and we regularly have irregular meetings these days ;) While that is indeed trouble, it indicates interest, which is a good thing.

Kushal:

We should stop people from treating Fedora as a travel agency.

For context, here’s a blogpost around the same concern. Many Indians just want to become ambassadors, because they think that warrants them funds to travel. It’s of course great if people have been contributing in volumes and want funds to travel and speak about it - in fact, that’s encouraged. But in the recent times, Kushal says he receives mentorship requests, where the person doesn’t want to go through the mentoring process and wants to gain ambassador status directly. Kushal quoted examples and how the mentors team in India dealt with it.

Us hard at work Photo: Somvannda

Next, we worked on the most important bit: the budget. Alick volunteered to review and update Q2 and I helped with Q1. Alick got lucky since most events planned in Q2 were cancelled and there wasn’t much to review. Thang helped me cross-check events, swag requests and travel tickets from Q1.

After a lunch break, we turned to discuss Ambassador Polos and FAD Phnom Penh. I had been working on cleaning up the entire APAC trac for two weeks, but was unable to complete it because people hardly respond. Finally, at the meeting, with help from everyone present, the APAC trac is now Sparkly!

Software Freedom Day at the Uni

This was my second SFD, first being the one I helped organize in school. The way this one was organized was definitely more colorful - it started off with a Tux dance!

Alick had some swag flown over from China, so we used them up at our booth - it disappeared quickly, even before we had a chance to grab some of the folks and do some Fedora preaching. Nonetheless, it was super fun. I think we managed to direct some of the students to our Fedora room for the afternoon sessions. With the swag all gone and not much agenda for the rest of the morning, we headed to the main hall.

Sponsors being felicitated Photo: Alick

I’m going to have to quote the following line from Alick’s report:

Alick:

Sarup, Somvannda, and I are honored to be introduced as special international guests to the event (in English).

It was funny (although exciting) to attend the first few talks in the regional language. Well, we even attended the “How to contribute to Fedora without programming skills” keynote by Tuan in Vietnamese ;)

Come afternoon, we moved to our Fedora room. While Trang and I went around gathering folks to attend our sessions, Thang introduced the attendees to the Fedora Project - who we are, what we do, our goals, and why bother. He did his session in Vietnamese, and the attendees were visibly glued.

Next was Alick’s session on FOSS Software Defined Radio. I think he did a great job introducing the topic - it was a topic unfamiliar to me, but now I get the basics. I liked his idea of motivating through examples.

Finally, I did my mini workshop on FOSS 101. Prior to the event, we had a little debate around what I should talk about - GSoC? Git? Rails? From my understanding of the audience, I decided to do a diluted version of my FOSSASIA workshop. I introduced attendees to the idea of FOSS, put up quotes sent to me by Sumanah and Tatica (who I’ve always felt are great examples of our awesome lady FOSS activists) and showed them around IRC & the idea of mailing lists. I wrapped up with a basic introduction to Git (for which I should thank Alick for his help with the demos and Trang for the translation).

Arrangements

Day 0 was 18 September 2014. I was put up at the Hanoi Legacy Hotel near the Hoan Kiem lake. My roomate was Alick, who arrived later in the evening. Somvannda was at the hotel a day in prior. Tuan and Thang being the locals, were our awesome hosts. For dinner on all but the last day, we had street food near the hotel. On the last day, we had dinner with the VFOSSA folks, other organizers and volunteers.

The meeting was held on the first day, 19 September, at the VAIP office. The SFD event was held on the second day, 20 September at Hanoi University of Engineering and Technology.

Fun Memories

As you would guess, we had fun along the way! On Day 0, Somvannda and I went around Hanoi’s streets hunting for Egg Coffee.

For dinner, Tuan and Thang took the rest of us to a nearby food joint, where we tried out some rather interesting Vietnamese food. I (kinda) picked up how to use a chopstick too.

Newly acquired chopstick skills Photo: Me

On Day 1, after the meeting was over, we headed to the Water Puppet Theater - a unique concept. For dinner, we roamed the street for local food, followed by a brief trip to the Night Market in the Hanoi Old Quarter. I wish we could have revisited the place on the final day as well, but we couldn’t as the events ended late.

On the final day, we were joined by the awesome (hopefully significant future contributors) Trang and Phuong. Trang made us try “Corn in Fish Sauce” and we wrapped up with the usual beer :-)

It was definitely a weekend well spent and I’d like to thank everyone for the fun and productive time!

October 01, 2014

Inkscape: Donde cada elemento es una capa

¿Te has preguntado en que se diferencia Inkscape de GIMP? Una de las principales razones por las cuales Inkscape es más utilizada para elaborar publicidad, es porque trata a cada elemento como una capa individual, esto permite que al elaborar un arte central, puedas simplemente reorganizar los elementos que lo componen para realizar un nuevo diseño, por lo tienes que olvídate de borrar y parchar nada.

En Gimp, si dibujamos varias figuras y no colocamos cada una en una capa, cuando queramos separarlas, no podremos, ya que todos los componentes que hicimos forman parte de una misma capa, en cambio, si realizamos las mismas figuras en inkscape, la diferencia es que podremos separarlas y trabajar con ellas como elementos individuales ya que cada una de ellas se comporta como una capa.

Por ejemplo, el diseño de esta web fue hecho con inkscape, así que dale un vistazo, deja tu comentario y no olvides suscribirte a mi canal de youtube y a este portal para seguir aprendiendo de forma fácil y rápida!

<iframe allowfullscreen="true" class="youtube-player" frameborder="0" height="390" src="http://www.youtube.com/embed/3BUtb7-xBwg?version=3&amp;rel=1&amp;fs=1&amp;showsearch=0&amp;showinfo=1&amp;iv_load_policy=1&amp;wmode=transparent" type="text/html" width="640"></iframe>

Y si te gusta mi contenido, no te olvides de votar por este blog como Mejor Blog de Software Libre, solo dale click al botón amarillo que dice “Votar” y confirma tu email! :D

flattr this!

September 25, 2014

Donde encontrar increibles Fotos Gratuitas

Uno de los retos mas grandes cuando nos toca realizar un website o una publicidad en general es encontrar fotografías geniales a un buen costo (o gratis dependiendo del cliente), y no es que sea malo pagar por fotografías, pero a veces el cliente es pequeño y pues el presupuesto no alcanza. En la red hay miles de servicios que proveen fotografías de alta calidad por un costo de suscripción mensual, por paquete o por fotografía, pero hay un mundo de sitios que ofrecen fotografías de forma gratuita bajo una licencia amigable para esas necesidades que tanto tenemos como diseñadores. Veamos algunos de mis favoritos:

dttsf

Death to Stock Photo es un servicio al cual te suscribes dejando tu email en su website, y mensualmente envía sets de 10 fotografías ambientadas usualmente en el tema del mes, con una calidad increíble y una variedad super útil. Cada vez que recibes un correo de ellos te emocionas solo al ver el titulo porque sabes que una explosión de creatividad ha llegado a tu correo.

pixabay

Pixabay es un excelente sitio donde el orden de sus etiquetas y categorías son la clave para encontrar lo que quieras, cuando quieras. No requiere registrarse y su interfaz es muy parecida a la de 500px, por lo que encontrar y descargar contenido es pan comido.

nos

New Old Stock es una colección de fotografías públicas antiguas que están libres de todo tipo de restricción de derechos de autor. Es muy a lo tumblr y es algo difícil ubicar fotos por categorías o etiquetas, sin embargo, la cantidad de fotografías referenciales a artículos y momentos históricos que tiene es simplemente hermosa.

littlevisuals

Little Visuals sigue el estilo de Death to StockPhoto pero cada 7 días. Tiene fotos hermosas bajo dominio público pero lo bueno es que en su web, tienen a disposición todo el histórico de packs, por lo que si te perdiste uno o apenas te estás uniendo, puedes revisar los packs anteriores y bajar lo que necesites.

picjumbo

PicJumbo es un sitio que disfruta de una variedad abismal de contenido, además de tener un excelente plugin para tu browser que te avisa cuando hay contenido nuevo. Se agregan fotos nuevas diariamente, así que nunca te quedarás sin contenido fresco para tus necesidades.

Y recuerda que las votaciones para Mejor Blog de SoftwareLibre aún están abiertas, vota si aún no lo has hecho!!!

flattr this!

September 24, 2014

DevAssistant Heuristic Review Part 2: Inventory of Issues

This is Part 2 of a 3-part blog series; this post builds on materials featured in an earlier post called DevAssistant Heuristic Review Part 1: Use Case Walkthroughs.

In this part of the DevAssistant heuristic review, we’ll walk through an itemized list of the issues uncovered by the use case-based walkthrough we did in part 1.

Since this is essentially just a list of issues, let me preface it by explaining how I came up with this list. Basically, I combed through the walkthrough and noted any issues that were encountered and mentioned in it, large and small. The result of this was a flat list of issues. Next, I went through the list and tried to determine a set of categories to organize them under by grouping together issues that seemed related. (You could do this in a group setting via a technique called “affinity mapping” – another fancy UX term that in essence just basically means writing everything out on post-its and sticking related post-it notes together. Fancy name for playing with sticky pieces of paper :) )

Breaking the issues into categories serves a few purposes:

  • It makes the list easier to read through and understand, since related issues are adjacent to each other.
  • It breaks up the list so you can review it in chunks – if you’re only interested in a certain area of the UI, for example, you can hone in on just the items relevant to you.
  • It tends to expose weak areas in great need of attention – e.g., if you have 5 categories and one of them is attached to a particular screen and the other 4 are more generic, you know that one screen needs attention (and should probably be a high priority for redesign.)

All right, so here is the list!

Base UI Design

These issues apply not to specific dialogs or screens, but more to the basic mechanics of the UI and the mental model it creates for users.

  1. Takes time to get situated: When I first look at this UI, I’m not sure where to get started. Because the first tab says “Create Project” and the second says “Modify Project,” I get the impression that you might progress through the tabs in order from left-to-right. From poking around, though, this doesn’t appear to be the case. So at initial glance, it’s hard for me to understand the overall flow or direction I’m meant to go in through the interface.
  2. Projects created/imported feel very disconnected from DevAssistant: It feels like there is no follow-up once you create or import a project via DevAssistant. I expected to be able to browse a list of the projects I’d imported/created using DevAssistant after doing so, but there doesn’t appear to be any link to them. DevAssistant seems to forget about them or not recognize them afterwards. Sure, they live on the file system, but they may live in all different places, and I may need some reminders / instruction about how to work with them – the filesystem doesn’t provide any context on that front.
  3. Little user guidance after project creation / import: After the user creates a project, all they really get is a green “Done” notification on the setup wizard window. I think there’s a lost opportunity here to guide the user through everything you set up for them so they know how to take advantage of it. Maybe have a little guide (easily dismissed or optional) that walks the user through the options they selected? For example, if they chose the vim option, have a section that activates on the post-project creation screen that talks about how DevAssistant customizes vim and how they can make use of it in their workflow. Basically, nudge the users towards what they need to do next! Offer to open up Eclipse or vim for them? Offer to open up the project in their file manager? Etc. etc.

Clarity / Context

These are issues where the UI isn’t clear about what information it needs or what is happening or why the user would pick a specific option. The cop-out fix for these types of issues is to write a lot of documentation; the right way to fix them is to redesign! If an option is confusing to explain and benefits all users, just turn it on by default if it’s not harmful instead of putting the burden of selecting it on the user. If the pros/cons of a config option aren’t clear, explain them – add some contextual documentation right into the app via tool tips or more clear text in the UI.

  1. Tab names unclear: The names of the tabs across the top don’t give me a good idea of what I can actually do. What does “prepare environment” mean? Looking at the interface, I think that going through one of the wizards under “Create Project,” would prepare an environment for the selected type of project, so why would I click on “Prepare Environment?”
  2. Prepare Environment options confusing: When I look at the options under “Prepare Environment,” I see “Custom Project” (what does this mean vs. the “Custom Task” tab?) and “DevAssistant.” These options don’t help me understand what “Prepare Environment” means. :-/
  3. DevAssistant button under Prepare Environment confusing: Why would I want to set up the environment for DevAssistant and checkout sources? Is the “Dev Assistant” button under “Prepare Environment” meant specifically for developers who work on DevAssistant itself?
  4. Some options could use more explanation / optimization: Some of the options in the dialogs could use more explanation but they don’t have any tooltips or anything. For example, why would I choose Python 2 vs. Python 3 when creating a new project? What are the pros/cons? How do I take advantange of the customizations offered for vim so I can determine if they’re worth setting up? (Or why wouldn’t I want to set them up? If it doesn’t take up much disk space and it’s a good value add why not just do it if I have a vimrc?)
  5. Not sure what “deps only” means: This could be my ignorance not being a real developer, but most if not all of the config dialogs I ran into had a ‘Deps-Only’ option and it’s still unclear to me what that actually means. I get depenencies in the context of yum/RPM, and I get them in the context of specific stacks, but I’m not sure how DevAssistant would generically determine them? Also, what happens if I don’t check off ‘Only install dependencies’ and check off everything else? Do the dependencies get installed or not? If I check off ‘Only install dependencies’ and also check off everything else, does that mean none of the other things I checked off happen because I checked off ‘Only install dependencies?’ The grammar of the string makes it ambiguous and the option itself could use some wordsmithing to be a bit clearer.
  6. What happens if you choose an option that requires something not installed? It’s not clear to me what happens if you pick vim or Eclipse, for example, in one of the options dialogs on a system that does not have them installed. Does it project setup fail, or does it pull in those apps? Maybe DevAssistant could check what development environments it supports that you already have installed and gray out the ones you don’t have installed, with a way to select them while explicitly choosing to install the development environment as well?
  7. Users need appropriate context for the information you’re asking them: There were a few cases, particularly related to connecting to github accounts, where the user is asked for their name and email address. It isn’t clear why this information is being asked for, and how it’s going to be used. For example, when you ask for my name, are you looking for my full name (Máirín Duffy,) just my first name (Máirín,) or my nick (mizmo?) (And can you support fadas? Or should I type “Mairin” instead of “Máirín”?)

Human Factors

This is a bucket for issues that put unnecessary burden / inconvenience on the user. A good example of this in web application design is a 3 levels deep javascript tiered dropdown menu that disappears if you mouse off of it. :) It makes the user physically have to take action or go through more steps than necessary to complete a task.

  1. Hover help text not easily discovered / pain to access: After a while of poking around, I notice that there are nice explanations of what each button under each tab means in a hover. My initial thought – putting this valuable information under a hover makes it more challenging to access, especially since you can only read the description for one item at a time. (This makes it hard to compare items when you’re trying to figure out which one is the right one for you.)
    Hover tips for create project buttons.

    Hover tips for create project buttons.

  2. Window Jumps – This happens when clicking on buttons in the main setup wizard window and new windows are launched. For example, go to “Modify Project” tab. Click on Eclipse Import or Vim Setup. It moves the DevAssistant up and to the right. Click back. The window remains up and to the right. Why did it move the window? It should remember where the user placed the window and stay there I think.
  3. Project directory creation defaults to user’s homedir: I think a lot of users try to keep their home directory neat and orderly – defaulting to creating / importing projects to users’ home directories seems the wrong approach. One thing to try would be to make a devassistant directory during the first run of the application, and defaulting to creating and importing projects to there. Another option, which could be done in conjunction with defaulting to a ~/devassistant directory, could be to ask the user during first run or have a configuration item somewhere so that the user can set their preferred repository directory in one place, rather than every time they create/import a project.
  4. No way to create new project directory in file chooser for project directory selection: In a lot of the specific project creation dialogs, there’s an option to specify a project directory other than the user’s home. However, the file chooser that pops up when you click on “Browse” doesn’t allow you to create a new directory. This makes it more of a hassle (you have to go outside the DevAssistant application) to create a fresh directory to store your projects in.
  5. Holy modal dialogs, Batman! I encountered a few modal dialogs during the process that made interactions with the application a bit awkward. Some examples:
    • There was a very large Java error dialog that was hidden under another window on my desktop, and it made buttons on the main progress/setup window unclickable so I couldn’t dismiss the main window without dismissing the Java error window. (And the Java error window didn’t have any button, not even an ‘X’ in the upper right corner, to dismiss it.) (See Use Case 2 for more details on this specific scenario.)
      This was too long to display fully on my 2560x1440 monitor... the button to close it wasn't accessible. Luckily I know how to Alt+F4.

      This was too long to display fully on my 2560×1440 monitor… the button to close it wasn’t accessible. Luckily I know how to Alt+F4.

    • During the Django setup process (Use Case 1) and during the C project use case (Use Case 2), there was a small modal dialog that popped up a little after the setup process began, asking for permission to install 20 RPM packages. It halted the progress being made – similar to how old Anaconda would pop up little dialogs during the install process. It’s better to ask questions like this up-front.
    • Another time during the Django setup process (Use Case 1), there was a tiny modal dialog that aligned to the upper left corner of the screen. I completely missed it, and this halted the project creation process. (It was a dialog asking for my name, related to Github account connection.)

      http://blog.linuxgrrl.com/wp-content/uploads/2014/08/Screenshot-from-2014-08-30-215454-1024×576.png

  6. If the user fills something out incorrectly, it’s not possible to recover in some cases. This is just another vote to ask users needed information up front and avoiding modal dialogs – I filled out the wrong email address in one of the pop up modals during the project creation process and realized too late I used the wrong email address.
  7. Git name / email address very sticky and not easily fixed: During Use Case 1, I was prompted for my name and didn’t realize it was the name that would be attached to my git commits. Once it’s input though, there’s no way to update it. It’s unclear where it’s stored – I blew away the project I was creating when I input it, thinking it was stored in the .git/config file, but DevAssistant still remembered it. Configuration items like this that apply to all projects should be editable within the UI if they can be input in the UI.
  8. Text fields for inputting long paths are unnecessarily short: This is pointed out specifically in Use Case 2, but I think all the setup dialogs were affected by it. The text dialog for putting the path to your project in, for example, was only long enough in my case for “/home/duffy/Repo” to be visible. The field should be longer than that by default.

Status / Transactional

These are issues that revolve around the current status of the task the user is trying to complete. An example of a common issue related to this in UIs in general is lack of progress bars for long-running tasks.

  1. When main window is waiting on user input, it should be made clear: During the Django setup process in Use Case 1, I had opted to use Github for the new project I was creating. After filling out the config screen and pressing ‘Run,’ it looked like the project creation process was going to be a while so I multi-tasked and worked on something else. I checked on the main window a few times – at a certain point, it said “In progress” but it wasn’t actually doing anything – a tiny little window popped up in the upper-left corner, halting the whole process. It would have been better to ask me for that information up front, as to not halt the process. But it also would have been good, if the main window is waiting on something, for it to let the user know it’s waiting and isn’t “In progress.” (Maybe it could say, “Paused, waiting on user input?”)

  2. Ask users all of the information you need up front, so they can walk away from the computer while you set things up: Speaking of that last point – this was an issue we had in the old Anaconda, too. During the installation process, sometimes error messages or dialogs would pop up during the install process and they would halt install progress. So the user may have gone to get a coffee, come back, and everything wasn’t done because anaconda sat there a lot of the time asking if it was okay to import some GPG key. When you have a long-running process (a git repo sync, for example,) I think it’s better to ask the user for everything you need up front rather than as the application needs it. It’s akin to someone coming up to your desk to ask a question, going away for a couple of minutes, then tapping you on the shoulder and asking you another question, then coming back 3 minutes later to ask another one – people like that are annoying, right?! (Well, small children get away with this though, being as cute as they are. :) )
  3. Transaction status unclear after errors or even after completion: When I canceled the Django project creation in Use Case 1 because I input the wrong email address, I wasn’t sure of the state of the project and how to proceed cleanly. What directories had been created on my system? What packages had been installed? Etc. I would have liked to clean up if possible, but it wasn’t clear to me what had happened and it didn’t seem like there was an easy way to undo it. Ideally, after hitting cancel, the application would have explained to me something about the state of the system and recommended a forward course of action (is it better to blow everything away and start over? Or re-run the command using the same parameters?)
  4. Little/Vague progress indication: There’s a yellow “in progress” string on the wizard screen after you hit run, and the cursor goes into spinner mode if you focus on that dialog, but there could be better progress indication. A spinner built into the window (here’s an example) is a good option if it’s not possible to do a progress bar. Progress bars are a little better in that they give the user an indication of how much time it might take to complete.

Layout / Aesthetics

These are issues around the actual layout, typography, padding, arrangement of widgets, widget choices in a given screen or dialog. They tend to be surface issues, and usually it’s a better use of time to rethink and redesign a dialog completely rather than fix these kinds of issues only on the surface (which could be akin to putting a different shade of lipstick on.)

  1. Package install confirmation dialog layout issues: So this is pretty surface-level critique – but there’s a few issues with the layout of the dialog asking the user if it’s okay to install packages via Yum. Here’s what it looks like initially:

    Usually the button that moves you forward is the farthest to the right, and the cancel is to the left. Here, the ‘Show packages’ button is on the right. I think maybe, ‘show packages’ should not be on the same line as ‘Ok’ and ‘Cancel,’ but instead maybe it should be a link above the buttons that expands into the full list (limited to a specific max vertical height of course, as to not make the buttons disappear so they are not clickable!) The list itself, has numbers, ‘1’ and ‘2’ before some of the package names – it’s unclear to me why they are there. Also, the list is very long but there’s no way to filter or search through it, so that might be a nice thing to offer. What are people concerned about when evaluating a list of packages to be installed on their system? The number of packages and total size might be useful – the size isn’t listed so that could be a good piece of information to add. I could go on and on about this dialog, but hopefully this demonstrates that the dialog could use some more iteration.
  2. Layout of options via linear checkbox list can cause confusion about relationship between options: In several cases during the walkthrough, I became unsure of how to fill out the setup wizard for various project types because I wasn’t sure how the different checkbox options would work. In one case, it seemed as if particular selections of checkboxes could never result in success (e.g., in use case 4 when I tried to create a custom project with only the ‘deps only’ checkbox selected.) In other cases, some of the options seemed to be vaguely related to each other (Eclipse or vim) and others seemed less related (github vs python 3 or 2.) I think probably each screen needs to be reviewed and potentially rearranged a bit to better represent the dependencies between the checkboxes, base requirements, etc. For example, categorizing the options – put Eclipse and VIM under a “Development Environment” category, put git / github / etc. options under a “Version Control” category, etc.

Feature Set

These issues are around the features that are available (whether or not they are appropriate / useful or accessible / placed correctly) as well as features that might be needed that are missing.

  1. No way to import pre-existing project that wasn’t created with DevAssistant? This one seems like a bit of a show stopper. I tried to import a project that wasn’t created using DevAssistant (which is the majority of upstream projects at this point,) and it didn’t work. It bailed out after detecting there’s no .devassistant in the repo. If there is a way to do this, it’s not clear to me having gone through the UI. It would be nice if it could import an existing project and create a .devassistant for it and help manage it.
  2. The button to create a github project is under the ‘Modify Project’ tab, not the ‘Create Project’ tab: This is a bit of an oddity – the create project tab is more focused on languages / frameworks… creating a new project in GitHub is definitely creating a new project though, so it doesn’t make sense for it to be under “Modify Project.”

Bugs

These are just outright bugs that don’t have so much to do with the UI specifically.

  1. Screen went black during root authentication during Django setup: I think this was some kind of bug, and wasn’t necessarily DevAssistant’s fault.
  2. Could not create a Django project on development version of Fedora: My Django project creation failed. The error message I got was “Package python-django-bash-completion-1.6.6-1.fc21.noarch.rpm is not signed. Failed to install dependencies, exiting.” Now, while this is a little unfair to point out since I was using F21 Alpha TC4 – DevAssistant should probably be able to fail more gracefully when the repos are messed up. When errors happen, the best error messages explain what happened and what the user could try to do to move forward. There’s no suggestion here for what to do. I tried both the “Back” and “Main window” buttons. Probably, at the least, it should offer to report the bug for me, and give me explicit suggestions, e.g., “You can click ‘Back’ to try again in case this is a temporary issue, or you may click ‘Main Window’ to work on a different project.” It probably could offer a link to the documentation or maybe some other help places (ask.fedoraproject.org questions tagged DevAssistant maybe?)
  3. Unable to pull from or push to github: During the Use Case 1 walkthrough, I was left with a repo that I couldn’t pull from or push to github. It looks like DevAssistant created a new RSA key, successfully hooked it up to my Github account, but for some reason the system was left in a state that couldn’t interact with github.
  4. C project / Eclipse project creation didn’t work: There was a Java/Eclipse error message pop up and an error with simple_threads.c. Seems like a bug? (Full error log)
  5. Tooltip for Eclipse import talks about running it in the projects directory: This seems like a bug – the string is written specifically for the command line interface. It should be more generic.

Up Next

Next, we’ll talk about some ways to address some of these issues, and hopefully walk through some sketchy mockups. This one might take a bit longer because I haven’t sketched anything out yet. If I’m not able to post Part 3 this week, expect it sometime next week.

DevAssistant Heuristic Review Part 1: Use Case Walkthroughs

You might be asking yourself, “What the heck is a heuristic review?”

It’s just a fancy term; I learned it from reading Jakob Nielsen‘s writings. It’s a simple process of walking through a user interface (or product, or whatever,) and comparing how it works to a set of general principles of good design, AKA ‘heuristics.’

To be honest, the way I do these generally is to walk through the interface and document the experience, giving particular attention to things that jump out to me as ‘not quite right’ (comparing them to the heuristics in my head. :) ) This is maybe more accurately termed an ‘expert evaluation,’ then, but I find that term kind of pompous (I don’t think UX folks are any better than the folks whose software they test,) so ‘heuristic review’ it shall be!

Anyway, Sheldon from the DevAssistant team was interested in what UX issues might pop out to me as I kicked the tires on it. So here’s what we’re going to do:

  • Here in Part 1, I’ll first map out all the various pieces of the UI so we can get a feel for everything that is available. Then, I’ll walk through four use cases for working with the tool, detailing all the issues I run into and various thoughts around the experience.
  • In Part 2, I’ll analyze the walkthrough results and create a categorized master list of all the issues I encountered.
  • In Part 3, I’ll suggest some fixes / redesigns to address the issues catalogued in Part 3.

Okay – ready for this? :) Let’s go!

Setup Wizard Mapping

(This is the initial dialog that appears when you start DevAssistant.)

Screenshot of the initial DevAssistant screen

Screenshot of the initial DevAssistant screen

I’m starting this review of DevAssistant’s GUI by walking through each tab and mapping out a hierarchy of how it is arranged at a high level. This helps me get an overall feel for how the application is laid out.

  • Create Project
    • C
    • C++
    • Java
      • Simple Apache Maven Project
      • Simple Java ServerFaces Projects
    • Node.js
      • Express.JS Web Framework
      • Node.JS application
    • Perl
      • Basic class
      • Dancer
    • PHP
      • Apache, MySQL, and PHP Helper
    • Python
      • Django
      • Flask
      • Lib
      • Python GTK+ 3
    • Ruby
      • Ruby on Rails
  • Modify Project
    • C/C++ projects
      • Adding header
      • Adding library
    • Docker
      • develop
    • Eclipse Import
    • Github
      • Create github repository
    • Vim Setup
  • Prepare Environment
    • Custom Project
    • DevAssistant
  • Custom Task
    • Make Coffee

Use Case Testing

I’m going to come up with some use cases based on what I know about DevAssistant and try to complete them using the UI.

Use Cases for Testing

  1. Create a new website using Django.
  2. Create a new C project, using Eclipse as a code editor.
  3. Import a project I already have on my system that I have cloned from Github, and import it into Eclipse.
  4. Begin working on an upstream project by locally cloning that project and creating a development environment around it.

Use Case 1: Create a new website using Django

I’m not much of a Django expert, so this may end up being hilarious. So I know Django is Python-based, and this is a new project, so I click on the “Create Project” tab, then I click on “Python.” I select “Django” from the little grey menu that pops up. The little grey menu looks a little bit weird and isn’t the type of widget I was expecting, but it works I guess, and I succesfully click on “Django.” Note: the items in the submenu under Python are organized alphabetically.

An example of the little grey menu - this one appears when you click on the Python button. Not all of the buttons have a grey menu.

An example of the little gray menu – this one appears when you click on the Python button. Not all of the buttons have a gray menu.

A new screen pops up, and the old one disappears. I had the old screen (the main DevAssistant window) placed in the lower right of my screen. The new screen that appears (Project: Create Project-> Python -> Django) jumps up and to the right – it’s centered perfectly on my left monitor. It looks like I’m meant to feel that this is a second page to the same window (for example, the way the subitems of GNOME control center work.) Instead, thought, it feels like a separate window because it’s a little bit larger than the first window and it jumped across the screen so dramatically.

Django project setup window

Django project setup window

This new window is a bit overwhleming for me. First it asks for a project name. I like ponies, and Django does too, so I call my project “Ponies.”

Next, it wants to know where to create the project. It suggests /home/duffy, but man is my home pretty messy. I click on “Browse” to pick somewhere else, thinking I might create a “Projects” subdirectory under /home/duffy to keep things nice and clean. There isn’t a way to create a directory in this file chooser, so I drop down to a terminal and create the folder I want, then fill out the field to say, “/home/duffy/Projects” and move on.

Now, it’s time to look through available options. Hm. This is definitely the most overwhelming part of the screen. Looking through the options… two seem to be related to coding environments – there’s a checkbox for eclipse, and there’s a checkbox for vim. There’s an option to use Python3 instead of Python 2. There’s an option to add dockerfile and create a docker image. There’s a virtualenv option, and a deps-only option. I think I understand all of these options except for “Deps-only,” which is labeled, “Only install dependencies.” If I don’t only install dependencies, then what happens? What is the alternative to clicking that box? I’m not sure.

Anyway, back to the editors. I like vim, but this is a fresh desktop spin installation and I know that doesn’t come with vim preinstalled. I wonder what will happen if I pick vim. I decide to do it.

Oh, and there’s a Github option. It will create a GitHub repo and push the sources there. That is pretty slick; I click that checkbox too and provide my github username. Then I click “Run” in the lower right corner. (Note that a lot of new GNOME 3 apps have the button to progress forward in the upper right.)

Next, pops up a screen that has a log that spits out some log style spew, looking like it’s installing some RPMs. Quickly, a modal dialog pops up that says:


Installing 20 RPM packages by Yum. Is this ok?

[ No ] [ Yes ] [ Show packages ]

The modal dialog has the same problem of being centered to the whole desktop rather than centered along where the parent window was. I like that it offers to show me which packages it’s going to install. I click on “Show packages.” I get a very nice scrollable display in the same window, neat and clean. I click “hide packages” to hide the list. Then I click “Yes” to move forward.

Now things got a bit weird. My whole screen went black. A gnome-shell style black dialog is in the center of this black screen and it is asking for my root password. I don’t think the screen behind the dialog should be black. It feels a little weird. (turns out this was a F21 TC4 issue only.) I type in my root password and click to continue.

And it seems the process failed. (To be fair, I am doing this on an alpha test candidate – F21 TC4 – so the issue may be with the repos and not DevAssistant’s fault.) It says:


Resolving RPM dependencies ...
Failed to install dependencies, exiting.

I like the option to copy the error message to the clipboard, and to view and copy to clipboard the debug logs. It errored out because of a packaging issue, it looks like:


Package python-django-bash-completion-1.6.6-1.fc21.noarch.rpm is not signed
1
Failed to install dependencies, exiting.
Failed to install dependencies, exiting.

There is also a “Back” button and a “Main window” button; I’m not sure which to click. I try “Back” first. That brings me back to the screen I filled all the details in for my project; however I know it won’t work now when I click run.

So at this point, I emailed Sheldon to let him know that I ran into some breakage, and he told me that it wasn’t necessary to test on F21 TC4 – what’s in F20 at this point is reasonably recent and worth doing a heuristic review on. So let’s continue from this point, using F20. :)

This time, I pick the same options on the create new Django project screen, and when I press forward, it says it’s installing 21 packages. Okay. It seems to be going, and I realize after wasting precious minutes of life reading crap on Twitter that it has been quite some time. I check back on the DevAssistant window – it looks like it’s still working, but it’s kind of not clear what it’s really doing.

Then I notice the tiny little dialog peering down at me from the extreme upper left corner of my laptop screen (it is easy to find in this screenshot; harder when other windows are open):

Hey, little guy! Whatcha doing up there?

Hey, little guy! Whatcha doing up there?

So this is another window positioning issue. I drag that little guy (who has some padding and alignment issues himself, but nothing earth-shattering) closer to the center of the screen so I can fill him out. The problem is, I’m not really sure of the context – why does it want my name? Does it just want my nickname, my first name, my full name, my IRC handle…? I end up typing ‘mairin’ and hit enter.

This little dialog is centered with the main window, thankfully.

This little dialog is centered with the main window, thankfully.

And then, something clicks. “I bet it wants my name and email address for the git config.” Well, crap. I already typed in “mairin,” and that’s not the name I want on my commits. I hit “Cancel” on the email dialog shown above, and try to “start over” by going back to the main window and creating the “Ponies” project again. But… ugh:

I changed the path from ~/Projects to ~/Code just because.

I changed the path from ~/Projects to ~/Code just because.

So there are a few problems here:

  • The form field for my name lacked enough context for me to understand what information the software really wanted from me.
  • I figured out what the software wanted from me too late – and there isn’t any way for me to go back and fix it via the user interface, as far as I can tell.
  • There’s a transactional issue: in order to completely finish creating the project as I requested, DevAssistant needed some additional information. I bailed out of providing that information, leaving the project in an unknown state. (Will it work, and just miss the features that required information I didn’t provide? Since I bailed out early, which features will be missing? Is there a way to fix it by filling them in afterwards? Should I just delete from the filesystem and start over again?

The latter is what I did – I went into nautilus, nuked my ~/Code/Ponies directory, and ran through the Django project creation process (same options) from the main DevAssistant window one more time.

Unfortunately, it remembered the name I had given it. Normally this is a wonderful thing – interfaces that ask the same question of a user over and over again are annoying. In this instance, however, the politeness of remembering my name was a bit unforgiving – how could I correct my name now? Will all projects I create in the future using DevAssistant have “mairin” as my name instead of the “Máirín Duffy” of my vain desires??

Well, a rose by any other name would smell as sweet – whatever. Let’s carry on. So I am asked my GitHub password after my email address, which I provide, and soon afterwars I am greeted with a completed progress screen, a link to the project I created on GitHub, and a perusable log of everything DevAssistant just did:

That was definitely an easy way to create a project on GitHub.

That was definitely an easy way to create a project on GitHub.

So I think I’m done at this point? Maybe? I’m not 100% clear where to go from here. Some potential issues I’ll note at this point:

  • The project I created on GitHub through this process is completely empty. I was expecting some Django-specific boilerplate content to be present in the repo by default, and maybe some of the files suggested by GitHub (README, LICENSE, .gitignore.) But maybe that part happens later?
  • There’s an ssh issue in the logs. Ah. Now we see why my repo on GitHub is empty:

    Problem pushing source code: ssh_askpass: exec(/usr/libexec/openssh/ssh-askpass): No such file or directory
    Host key verification failed.
    fatal: Could not read from remote repository.

I didn’t see a seahorse dialog pop up asking me to unlock my ssh key. I open up seahorse – it looks like DevAssistant made an RSA key for me. I’m not sure what’s going on here, then. It never asked me for a passphrase to create a new key.

I have an interesting test case in that I have a new laptop that I didn’t copy my real ssh key over to yet. I wonder how this would have gone done if I did have my real ssh key on this system…

Then, I get an email from GitHub:


The following SSH key was added to your account:

DevAssistant
98:a0:c9:9e:aa:44:08:ae:c4:96:a0:f9:1c:96:34:04

If you believe this key was added in error, you can remove the key and disable
access at the following location:

https://github.com/settings/ssh

If the new ssh key was added to my account, then why didn’t this work? :-/

My big question now is: what do I do next? Here is what I have:

  • A new boilerplate Django project in my home directory.
  • An empty GitHub project.
  • Some stuff that got added to vim (how do I use it?)

What I don’t have that I was expecting:

  • Some kind of button or link or something to the boilerplate code that was created locally with some tips / hints / tricks for how to work with it. (Links to tutorials? Open up some of the key files you start working with in that environment in tabs in Geany or Eclipse or some IDE? Okay so I selected vim – tell me how to open this up in vim?)
  • Some acknowledgement of the ‘Ponies’ project I just created in the DevAssistant UI. I feel that my ponies have been forgotten. There isn’t any tab or space in the interface where I can view a list of projects I created using DevAssistant and manage them (e.g., like changing the ssh key or changing my name / email address associated with the project.)

I’m feeling a bit lost. Like when the lady in my GPS is telling me how to get to Manhattan and she stops talking to me somewhere in the Bronx.

Use Case 2: Create a new C project, using Eclipse as a code editor.

Back to the main window in DevAssistant! I click on the “C” button and right away am greeted with the “Create Project -> C” screen, which I dutifully fill out to indicate a desire to use Eclipse and to upload to GitHub:

Screenshot from 2014-08-30 23:14:44

A modal alert dialog ask me if it’s okay to install 139 packages (and again, helpfully offers a list of them if I want it.)

(The alignment within the dialog is a bit off; there’s a lot of extra padding on the bottom and the buttons are a bit high up. The OK button should probably be the right-most one, and a different widget used for ‘show packages,’ (like a disclosure triangle, maybe.)

The dialog that asks for permission to install required dependencies. The alignment within the dialog is a bit off; there's a lot of extra padding on the bottom and the buttons are a bit high up. The OK button should probably be the right-most one, and a different widget used for 'show packages,' (like a disclosure triangle, maybe.)

The dialog that asks for permission to install required dependencies. The alignment within the dialog is a bit off; there’s a lot of extra padding on the bottom and the buttons are a bit high up. The OK button should probably be the right-most one, and a different widget used for ‘show packages,’ (like a disclosure triangle, maybe.)

First, I click to show the list of packages. Now I see why there is so much padding on the bottom of the dialog. :) But it’s not enough space to comfortably skim the list of dependencies:

Selection_101

I drag out the window size to make it a bit bigger to more comfortably view the list. Some package names have a “1:” in front of them, some have “2:” in front of them, some have nothing in the front. I’m not sure why.

Selection_102

Anyway, enough playing around. I agree it’s okay to install the dependencies.

I watch the dialog. 139 packages is a lot of packages. While they are downloaded, there’s no progress bar or animation or anything to let me know that it’s still actively working and not crashed or otherwise unstable. The only indications I have are the cursor getting set to spinner mode when I go to the DevAssistant window, and the text, “Downloading Packages:” at the bottom of the visible log in the DevAssistant window:

Screenshot from 2014-08-30 23:20:00

After a little while, unfortunately, things didn’t go so well:

DevAssistant setup wizard_104

Here’s the full error log.

So now I’m not sure what state I’m left in. The “DevAssistant setup wizard” window has grayed out “Main window” and “Debug logs” buttons – the only live button is “Copy to clipboard.” I click on “x” in the upper right corner and it tries to quit but it doesn’t seem to do anything. Then I notice the large Java error popup window hidden behind my browser window:

This was too long to display fully on my 2560x1440 monitor... the button to close it wasn't accessible. Luckily I know how to Alt+F4.

This was too long to display fully on my 2560×1440 monitor… the button to close it wasn’t accessible. Luckily I know how to Alt+F4.

Once I closed that window, the main DevAssistant wizard window changed, and I was able to get access to the main window and back buttons.

On to the next use case!

Use Case 3: Import a project I already have on my system that I have cloned from Github, and import it into Eclipse

All right, so what project should I import? I’m going to import my selinux-coloring-book repo. :) This is a git repo I created on github and have synced locally. Let’s see if I can import it and open it in eclipse.

So I go back to the main DevAssistant setup wizard window and I click on the ‘Modify Project’ tab along the top (is this the right one to use? I’m not sure):

The "Modify Project" tab

The “Modify Project” tab

I’m not sure whether I should do “Eclipse Import” or “Github.” If I hover over the Github button, it says:

Subassistants of Github assistant provide various ways to work with Github repos. Available subassistants: Create Github repository.

While the first sentence of the description makes this seem like the right choice, the last sentence gives me the sense that the only thing this button can do is create a new github repo since that seems to be the only available subassistant (whatever a subassistant is.)

The Eclipse Import hover message is:

This assistant can import already created project into Eclipse. Just run it in the projects directory.

This seems like what I want, except the last line has me confused. I’m running a UI, so why is it telling to me to run something in a directory? (I’m assuming this is maybe a shared help text with a command-line client, so it wasn’t written with the GUI in mind?) Anyway, I’m going to go with the “Eclipse Import” button.

Again, the main DevAssistant window disappears and a new window pops up, ignoring my window placement of the first window and centering itself on top of my windows in the middle of my active screen. Here’s what that new window looks like:

Window shown after the Eclipse Import process is started.

Window shown after the Eclipse Import process is started.

So I notice a few issues on this screen (although note some of them may be because I’m not a real developer and I haven’t used Eclipse in years):

  • There are two text fields where the user can specify a path on the file system. While such paths are usually pretty long, the fields aren’t wide enough to show much beyond the portion of my path that points to my home directory – /home/duffy. So these fields should probably be wider, given the length of these kinds of paths.
  • I’m not sure what Deps-Only is going to do – what kind of project is it assuming I have? Is it going to somehow detect the dependencies (from make files?) and install them without importing the project? Why would I want to do that?
  • The options are listed out with checkboxes – and you can click them all at once. Does that make sense to do? I guess it does – I could specify the Eclipse workspace directory (although is that in ~/workspace or $PROJECT-PATH/eclipse?), and the path to the project, and that I only want deps-only. It seems like maybe ‘deps-only’ is an option that is subject to path though – if I don’t specify a path, how is it going to detect deps?
  • In fact, the process fails completely if I only select the “Deps-Only” checkbox and nothing else. So this selection shouldn’t be possible.

I end up just specifying my path (which points to /home/duffy/Repositories/selinux-coloring-book,) checking nothing else off, and clicking “run.” This doesn’t work – I get a blank “Log from current process” window that says “Failed” on the bottom:

DevAssistant setup wizard_110

On a whim, I check to make sure Eclipse is installed – yeah it is. That’s not the issue. I go back and check of the “Eclipse” checkbox in addition to the “Path” checkbox – looks like the failed C project creation made a ~/workspace directory, so I use that one. I hit run again…

DevAssistant setup wizard_110

I’m not sure where to go from here, so I’ll move on to the next use case.

Use Case 4: Begin working on an upstream project by locally cloning that project and creating a development environment around it

What upstream project should I work on? Let’s try something I don’t already have synced locally that isn’t too huge. I’ll choose fedora-tagger.

Okay back to the main DevAssistant window:

Screenshot of the initial DevAssistant screen

Screenshot of the initial DevAssistant screen

Where do I start? Not “Create Project,” because that’s for a new project. I look under “Prepare Environment:”

Prepare environment tab

Prepare environment tab

I’m not going to be working on DevAssistant or OpenStack, so I examine the hover text for “Custom Project:”

Only use this with projects whose upstream you trust, since the project can specify arbitrary custom commands that will run on your machine. The custom assistant sets up environment for developing custom project previously created with DevAssistant.

Hm. So two things here:

  • This won’t work, because fedora-tagger wasn’t created with DevAssistant.
  • I don’t think I would trust any project with this option, unless I could at least examine the commands it specified to run before running them. It would be nice to have a way to do that. Looking at the dialog linked to this button, it doesn’t look like there is.

Okay, so now what will I do? It doesn’t seem like there is a way to complete this use case under “Prepare Environment” unless my upstream is OpenStack or DevAssistant. The “Custom Task” tab won’t work, because the only option there is “Make Coffee.” So I’ll try to “Modify Project” tab:

The "Modify Project" tab

The “Modify Project” tab

Even though I know from an earlier use case that the hover text for the “Github” button seems to indicate that it can only create new Github projects, I try it. Nope, it just lets you create a new project. Hm. Well fedora-tagger is a python project. There’s a C/C++ projects button – maybe I should pick a C project instead.

So I’ll try a C project. What is written in C? I know a lot of GNOME stuff is written in C; I’m sure I could find something there. So I look at the tooltip on the C/C++ projects button:

This assistant will help you ito [sic] modify your C/C++ projects already created by devassistant. Avalaible [sic] subassistants: Adding header, Adding library

Well, I don’t know any GNOME C projects that were created with DevAssistant. :-/ At this point, I’m not sure how to move forward. I click on the “Get help…” link in the upper right:

Problem loading page - Mozilla Firefox_122

It looks like doc.devassistant.org doesn’t work at all. Nor does devassistant.org …. it must be down. It’s still up on readthedocs.org though… okay let’s see:

Preparing: Custom – checkout a custom previously created project from SCM (git only so far) and install needed dependencies

This seems to be what I need? But the button for “Custom Project” said that the project should have been created with DevAssistant. Let’s try it anyway. :) I’ll use gnome-hello, which is a small C demo project.

First screen for "Custom Project"

First screen for “Custom Project”

A couple things on this screen:

  • All of the items are checkboxes, except for URL which has a red asterisk (‘*’) – why? Is that one required? Then it should probably have a checked and grayed checkbox?
  • Again, the text fields for typically long path strings are pretty narrow.

I paste in the gnome-hello git url (git://git.gnome.org/gnome-hello) and hit “Run.”

Custom Project completion dialog.

Custom Project completion dialog.

Hmm, okay. So it didn’t find a .devassistant and bailed out. What did it do on my filesystem?

Project directory created by Custom Project wizard

Project directory created by Custom Project wizard

I would have preferred it not dump the git repo in my home dir – but I suppose that the path was an option I could have specified on the screen before. It might be better for me to be able to specify that I keep my git repos in ~/Repositories… so by default DevAssistant uses that so I don’t have to input it every time.

I don’t think there’s anything else I can do here, so I’ll finish here.

On to analysis!

In Part 2, we’ll go through the walkthrough and pull out all of the issues encountered, then sort them into different categories. Look for that post soon. :)

Como hacer videos para Instagram usando Kdenlive + Instashot

Te has preguntado como hago mis videos de Instagram? Trabajar con Kdenlive es muy fácil y una de las cosas que mas me gusta es que puedes arrastrar cualquier video, imagen o audio y automáticamente se cargará en la aplicación. Hacer un video en Kdenlive es como armar un rompecabezas, solo debes arrastrar las piezas que ya cargaste y ordenarlas. Puedes separar las pistas, cortarlas, agregarles efectos y mucho más. Poco a poco iré explicando como trabajar mas detalladamente con Kdenlive, pero primero, quiero que vean la potencialidad de esta aplicación y se enamoren de ella como yo lo he hecho.

Una vez exportado nuestro video mp4 lo copiaremos a nuestro teléfono, abriremos instashot y selecionaremos video. Navegaremos hasta encontrar nuestro video y lo cargaremos a la aplicación. En este punto verás una serie de opciones en la parte inferior, seleccionaremos Fit de ajustar, y si queremos que el video sea cuadrado como instagram, seleccionaremos Full. Puedes probar las otras opciones si te da curiosidad. Cuando estés feliz con el encuadre, pulsa el visto bueno a la derecha y en la parte superior encontrarás el enlace directo para cargarlo a instagram. Tarda un poco ya que le baja la calidad, al menos ese fue mi caso y eso te dará la opción de publicar de una vez.

Y así es como realizo los videos que me gusta compartir con ustedes en instagram y que ultimamente “creo” que los han hecho reir un monton. Recuerden que sus dudas se convierten en podcast, así que no sean timidos y dejen un comentario… ahh…. y si les gusta mi contenido, no olviden ir a portal programas y votar por tatica.org como mejor Blog de SoftwareLibre, su voto significa mucho para mi!

<iframe allowfullscreen="true" class="youtube-player" frameborder="0" height="390" src="http://www.youtube.com/embed/a21b2Jl9MwE?version=3&amp;rel=1&amp;fs=1&amp;showsearch=0&amp;showinfo=1&amp;iv_load_policy=1&amp;wmode=transparent" type="text/html" width="640"></iframe>

flattr this!

September 22, 2014

Tatica.org nominada a mejor Blog de SoftwareLibre! Y ya puedes votar!!!

Con mucho gusto les cuento que este blog ha sido nominado a “Mejor Blog de Software Libre” por la gente de PortalProgramas. El simple hecho de estar nominada junto a portales de noticias me hace sentir increíble y ya de por si es una nueva motivación para seguir escribiendo mis experiencias y seguir haciendo videotutoriales y podcasts para ustedes… mil gracias!

nominado-thumb

Hoy (22 de septiembre de 2014) comienza la fase de votaciones para la 6ª edición de los Premios PortalProgramas al mejor Software Libre 2014 y estará activa hasta el día 11 de octubre de 2014. Esta fase durará hasta el 11 de octubre de 2014, y cualquier usuario podrá votar a su software preferido de entre los nominados este año. Cada usuario puede votar una única vez en cada categoría y para que la votación sea lo más ágil y fácil posible no se requiere registro en PortalProgramas para vota.

Como cita el mismo portal:

¿Por qué lo merece?
Tatica tiene años realizando artículos y podcast de forma libre para todos sus lectores. Su proyecto Gimp100Podcast es bastante conocido en la actualidad y ha permitido a varios institutos y colegios aprender más sobre el diseño y la fotografía con Software Libre.

Y hacen una pequeña descripción de lo que trata mi blog (mucho mejor que las fallidas descripciones que yo misma le he tratado de poner durante todos estos años)

El Blog de Tatica tiene varios años colaborando desinteresadamente con las comunidades de Software Libre. Es un blog personal, por lo que pese a su vida cotidiana, ella logra sacar tiempo para realizar artículos y podcast de calidad que apoyan el aprendizaje en Español.
Tatica le permite al usuario aprender, sin necesidad de utilizar una terminología complicada, y usualmente divierte mucho al lector mientras aprende algo nuevo. Siempre contesta las preguntas que le hacen y realiza nuevos artículos en base a las dudas de sus lectores.
Es un Blog que le permite al usuario aprender y conectarse con un usuario que, al igual que el, está deseoso de aprender más sobre el mundo del Software Libre. 

Así que, a votar!!!!! es muy fácil, solo deben dar click en el botón amarillo que dice votar y listo, y si les gusta este blog, no olviden compartirlo con sus amistades! Nuevamente, gracias :D

– tatica hace el baile de la felicidad…

<iframe allowtransparency="true" frameborder="0" height="710" scrolling="no" src="http://instagram.com/p/tQNelvok6V/embed/" width="612"></iframe>

flattr this!

September 20, 2014

Inkscape-Weekend Oktober 2014

Ich habe von verschiedenen Seiten Anfragen erhalten, ob ich denn nicht noch einen Inkscape-Wochenendworkshop anbieten könnte. Momentan ist meine Zeit allerdings begrenzt und es gibt nur eine Möglichkeit und zwar am Wochende vom 24.-26. Oktober 2014

Der Workshop beginnt am Freitag Abend mit einigen Dingen rund um SVG, der Oberfläche von Inkscape, den Verzeichnissen, Zooming und Panning und setzt sich dann am Samstag morgen fort mit den Zeichenwerkzeugen. Nach meinen Erfahrungen schaffen wir in bestimmte Themen, wie Live Pfadeffekte, Gekachelte Klone und vor allem Filter nur Einblicke aber die reichen aus, um im Selbststudium sich damit beschäftigen zu können. Wann immer es geht schieben wir auch praktische Teile ein, bist Sonntag Abend sollten wir auf diese Art und Weise alle Funktionen von Inkscape kennengelernt haben.

Neu dieses Mal ist, das wir verstärkt auf die neuen Funktionen von Inkscape eingehen, denn unter Umständen ist die Version 0.91 von Inkscape dann bereits erschienen. Diese bringt eine große Anzahl Neuerungen mit.

Wie bei allen anderen Workshops vorher auch gibt es wieder ein Formular zur Anmeldung, auch dieses Mal gilt ich mach mir nur die Mühe, wenn mindestens 3 Leute zusammen kommen. Ich gebe spätestens eine Woche vor Veranstaltung per Mail Bescheid, ob die Veranstaltung stattfindet.

Ansonsten bleibt alles beim alten Teilnahme frei, es sei denn ihr wollt mir etwas zustecken aber das bleibt euch überlassen.

September 16, 2014

People sea wallpapers
Usually pictures including people does not make for good desktop wallpaper, one exception is images of your beloved one, which do not make sense to share, and another exception is images of scantily clad celebrities, which is some circles may be popular but in others are highly controversial. But as a photographer I prefer to take photos with people, those pictures have more soul. Still, how such pictures can be turned in generally usable wallpapers? Make sure people are not recognizable, turn them in silhouettes, is a perfectly cromulent way.
people sea wallpaper
people sea wallpaper

September 15, 2014

¡LiveCast con Tatica este Martes 16!

¿Tienes preguntas, recomendaciones o comentarios? ¡Es el momento de aprovechar y hacerlas! Este martes 16 de Septiembre estaré realizando un LiveCast donde podrán realizar cualquier pregunta o comentario y lo estaré respondiendo en vivo. La idea es compartir una tarde con uds y poder compartir con quienes hacen que escribir sea divertido.

El LiveCast comenzará a las 5pm(VE) (Para verificar el horario correspondiente a su país, vean este enlace) y durará una hora aproximadamente. Si no pueden asistir, pueden comenzar a dejar sus dudas o comentarios en esta entrada y las mismas serán respondidas ese día.

La URL del LiveCast será dada por twitter el mismo día del evento a la hora de inicio, así que estén en sintonía. Las mejores preguntas serán parte de los próximos podcast de este mes, así que, dejen que su creatividad ponga el límite!

livecast

flattr this!

Don't stop at the summer project!

Note: this is work in progress. I’d like to improve this post to include universal opinions, so I’d appreciate any feedback!

Ouch, two summers with Fedora are over! As far as GlitterGallery news goes: Emily’s working on setting up a demo for design team, fantastic Paul is scrubbing up some final pre-release bugs and more potential contributors are now showing up. As far as GSoC itself is concerned: Google’s sent over money, the tshirt should be here soon enough and it doesn’t look like any more formalities are pending. Time to pack, find a job, and say goodbye to friends at Fedora project, right?

Wrong.

The other day, Kushal called me up and mentioned his concerns with students disappearing once their GSoC projects are over, and once they have their money. The experienced folks in most communities share the same disappointment. I couldn’t agree less, and promised to write about it, hence this post. I’m not sure who the target readers should be, but my best guess would be anyone aspiring to start contributing to a FLOSS project, especially students hoping do a GSoC next year :-)

Why bother contributing to a FLOSS project?

Let’s be done with the incentives first. Sure, there’s the geek-badge associated with it, and you’re helping make the world a better place. What other incentives do FLOSS communites offer? Here are the ones that attract me:

  • Something meaningful to work on: If you’re a student stuck in a place where they make you do things you aren’t motivated about (I hear jobs aren’t too different), then being involved in a community can make your spent time meaningful. It doesn’t really have to be a FLOSS community, but in my case, it seems to have worked out well. I would rather feel awesome about having built a small piece of software that does something for me, over mugging an outdated book on “Net Centric Programming”.

  • Jobs, money, opportunities: Depending on your case, you may not necessarily get paid, but typical FLOSS communities have participants from world over => you get exposed to a lot of opportunities you wouldn’t hear of otherwise. Many of my professors think the idea of writing FLOSS is stupid. As a result, their understanding of opportunities is limited to campus placements. It doesn’t really have to be! I have come to learn that there’s an entire industry of people who land jobs just based on links to stuff they’ve worked on.

  • Friends around the world: It’s embarrasing I didn’t know of a country by the name Czech Republic until about last December. Now I not only have friends from Cz who I speak to quite often, I actually was in Prague a month ago and even did a talk! My summer mentor is from the USA. My closest friend is a German. On a daily basis, I probably end up interacting with someone from each continent. It’s a lot of fun learning how things in other places work. If you’re from India like me, the idea of trains departing at times like 15:29 should impress you.

Why not contribute?

However much FLOSSy geeks will brag about their flawlessness, FLOSS communities aren’t for everyone. Some hints:

  • You need a certificate for showing up: I wish I could wrap two bold tags there. Please contribute only if you want to do it for the fun of it. Most people in any community exist because they want to improve or utilize a skill, not because they can stack up a bunch of certificates on their resume.

  • You need to be spoonfed Unfortunately, as much as everyone would like to help new contributors to a project, showing people around takes time. Sure, we’re willing to put in an hour or two every week finding links and emailing you. But if you aren’t going to read them, and learn to find more links, then you’re making things difficult.

  • You need to made ambassador the first thing, just so you have a tshirt: Here’s the thing about Ambassador programs - they were created to provide structure for contributors to show off the awesome stuff they’re building. If you aren’t contributing, you need to do that first. Ideally, if there are incentives coming up (swag, flight tickets, whatever), they go to the active folks first. Of course there are exceptions once in a while when new people are encouraged with incentives when they seem promising, that’s different. (I have had a junior ask me what organization offers the best perks so he could contribute there, and another one wanting to fly to a different continent at a community’s expense, because she wanted to attend a Django workshop).

In my case, I got involved with the Fedora community through a design team project I ended up co-authoring. But I’d say it was just a starting point! I don’t have unlimited time thanks to University classes, but with what I have, I contribute where I can. It really doesn’t have to be limited to my project (although that’s where I focus my efforts on) - it could be a random broken wiki page. These days I’m cleaning up expired requests on our request-tracking system. A while ago, I started with Inkscape and attempted Fedora.next logos. On other days I hang out on IRC channels geared at helping newbies. Even though Fedora infra doesn’t do ruby oriented projects, I sometimes hang out in their meetings to see what they’re up to. I don’t understand how Marketing works, so next I’m planning to give it a shot. Ultimately, the goal is to quickly pick up a skill, while improving Fedora as a community in whatever small way I can.

That’s something I’d request everyone to do. Being involved with a GSoC or a similar summer engagement is fun - you get to work on something large enough to be accountable for, while being small enough to pick up quickly. But try to look around - find projects that your project depends on. Fix them. Find projects that could use yours. Fix them. If they don’t exist, make them! I bet Kushal wants to convey the same message: just don’t stop with your project. A successful summer is a good thing - but if you’re simply going to disappear, then it’s purpose is defeated. You have to justify the time your mentor spent on you! :-)

On an ending note, how would you look for more areas to contribute? It’s simple - ask your mentor. Or just try to remember the inconvenience you had with library X compiling too slow. It was a good thing you overlooked it then because you had to keep track of the bigger picture. Now’s the time to return to it and fix it. Also, try to attend events relevant to what you’re working on. I’m really lucky Gnokii invited me to LGM in his country - I ended up finding another project to use within GlitterGallery, for a start.

There’s almost always everts happening around where you live. I’m in Coimbatore which is relatively sleepy, but I travel to Bangalore about every month to participate at an event. If you find an event that could benefit from you, try and ask the organizers if you could be funded. Just don’t stop!

Sunrise sea wallpapers
I was away for the week-end, so I continue clearing the summer wallpapers queue after a small gap (initially planned the climax for the Sunday). Hope you will enjoy them, no matter the timing.
sunrise sea wallpaper
sunrise sea wallpaper
sunrise sea wallpaper

September 14, 2014

Texturas de Naturaleza: Grama

Es fin de semana, y con lo único con lo que pude jugar fue con la cámara, así que mientras grababa a Gris en su baño dominical aproveché de tomar algunas fotos de la grama que crece en el jardín. Es bastante variada ya que es silvestre, así que, espero lo disfruten y le sea de utilizad.

Si las usan, no olviden compartir su trabajo, eso me hará muy muy feliz :)

(Click en las imágenes para verlas/descargarlas en flickr)

IMG_5697.redimensionado Nature Texture

Nature Texture Nature Texture

flattr this!

September 12, 2014

Ser una emprendedora con Software Libre, en el II Foro de Mujeres y TIL

Este viernes 12 y Sábado 13 de Septiembre, se estará realizando el II Foro de Mujeres y Tecnologías Libres, organizado por las ActivistasXSL, el cual se está llevando a cabo en las instalaciones del INCES en la Av. Nueva Granada, en Caracas. Soy parte de este grupo desde hace varios años, cuando tuve la oportunidad de conocer mujeres maravillosas que, como yo, son parte del mundo de las tecnologías y el Software Libre.

Por mi ubicación geográfica y que en este momento estoy super abollada de trabajo (Gracias a Dios) no podré asistir de forma presencial, sin embargo, gracias a la tecnología puedo dejar mi granito de arena en este evento que es tan importante para quienes aún somos una minoría en busca de levantar nuestra voz.

Puedes conocer la agenda completa del evento aquí: http://foromujerestil.org.ve/agenda.html

He aportado un pequeño video donde cuento mi experiencia como mujer emprendedora utilizando herramientas de Software Libre, si te da curiosidad conocer mi experiencia, no dudes de asistir al evento, será transmitida a la 1:30pm de hoy… pero si tu ubicación geográfica no te permite asistir de forma presencial, no dudes en ver el video y preguntar o comentar lo que quieras.

Lo importante es que, como mujeres, podamos compartir conocimiento, experiencias y formar una red de apoyo donde, quienes ya tenemos años en este mundo, podamos dar esos consejos o mensajes de apoyo a quienes quieren recorrer esta vía, pero sin los tropiezos que nosotras tuvimos.

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="330" src="http://www.youtube.com/embed/zLl0rv2klVg?list=UUKaTf52v2U7EYTA0iIQ3QeA" width="630"></iframe>

flattr this!

Sea birds wallpapers
As anticipated, today my free wallpaper series is completed with yet another part from this summer backlog (good new for those uninterested: two more parts and I will stop for a good while). Now is about birds flying above the sea and in front of a rising sun. Quite a lot of empty space to host desktop icons.
sea birds wallpaper
sea birds wallpaper
sea birds wallpaper

September 11, 2014

Post-industrial wallpapers
I'm not sure why I liked to call those images "post-industrial" when the cranes in the background are from a large and very active naval yard, still I think they are a worthy addition to the series (and free, of course, as in CC-BY-SA).
post industrial wallpaper
post industrial wallpaper

September 10, 2014

¿Qué es una Máscara de Capa? GIMP

¿Te gustan los montajes donde la misma persona aparece dos veces en la misma toma? Esta es una de las preguntas mas frecuentes que me hacen y la verdad es que solo necesitas una herramienta, la mascara de capas.

En este podcast verás como la mascara de capa te permite agregar y quitar cosas cuantas veces quieras porque lo importante es que nada desaparece en realidad.

IMG_5542-edit.redimensionado

La máscara de capa se activa haciendo click derecho sobre la capa que tienes seleccionada y activando en el menú la opción “mascara de capa”, para conocer más sobre las opciones de la misma, solo ve el tutorial!

Trabajar con mascaras de capa no es sencillo la primera vez, y no te voy a negar que requiere de mucha práctica, sin embargo, cuando comiences a trabajar con la mascara, nunca volverás a trabajar sin ella, ya que es una forma fácil de agregar y quitar elementos sin perder tu trabajo original, porque solo estás dejando ver una porción de tu capa original sin modificarla realmente.

Recuerda que hay un podcast nuevo cada semana, no olvides de ver los podcast anteriores y, porque no, dar un poco de amor si te gustaron :)

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="354" src="http://www.youtube.com/embed/hYH7Is4u948" width="630"></iframe>
Youtube Link: http://youtu.be/hYH7Is4u948

flattr this!

Beach wallpapers
As hinted the other day, there are more posts in the queue for my free wallpaper series. Today we are going to the beach! ...and if I wouldn't be so used with the one I keep using for a few years, I could see myself going with the first.
beach wallpaper
beach wallpaper
beach wallpaper

September 09, 2014

Wallpapers: sunsets over the city
Now, when the summer is over, I look back and notice quite a lot of summer-ish pictures which people may want to use as desktop wallpapers. Damn! my last post in the free wallpaper series was in the winter! My backlog of picture is considerable, so there may be 3-4 more similar posts to follow if I feel there is interest.
city sunset wallpaper
city sunset wallpaper
city sunset wallpaper

September 08, 2014

Como crear un Formulario de Reservas en tu WordPress

Una de las cosas que no pueden faltar en una web de servicios es un formulario de contacto, sin embargo, si el servicio que se presta depende de la disponibilidad de la persona que está siendo empleada el formulario de contacto se debe convertir en un formulario de reservas, con la que el cliente pueda conocer la disponibilidad del mismo y asegurar la fecha en la que quiere recibir el servicio.

Como varios saben, mi profesión desde hace ya casi 10 años es de diseñadora, y desde el 2009 me desempeño como fotógrafa a tiempo completo, y ya que no puedo estar en dos sitios a la vez, cuando un cliente solicita que preste un servicio de fotografía para un evento o producto, esa fecha queda eliminada del calendario laboral de otras actividades.

wordpress-reservation-howto

Luego de pasar prácticamente meses buscando una solución que me permitiera no solo agregar un Formulario de Reservas, sino que le enviara una respuesta apropiada al cliente que a elaborado la solicitud, no encontré nada específico a mis necesidades, así que, en mis ratos libres (que últimamente no son muchos) me dispuse a probar cuanto plugin que tuviese la palabra “Reserva”en su nombre. Restaurant Reservations es un plugin que acepta reservaciones para restaurantes. Permite rápidamente confirmar o cancelar una reserva, enviar correos de notificación y mucho más. Sin embargo, mi negocio no es un restaurante, sino un servicio de fotografía, así que luego de un par de arreglos y modificación de campos, quedó como quería.

1 El Restaurant Reservations agrega el código del formulario generado debajo del contenido de la página que aya sido especificada. En mi caso, ya yo tenía una página donde las personas podían consultar los precios actuales, por lo que coloqué el formulario de reservas en la parte inferior. Cabe destacar que hubo que modificar un poco el Css para que se mostraran tal como quería, pero no fue la gran cosa. (Click en la imagen para agrandarla)

rr-screenshot1-thumb

2 Como es un sistema de reservas de restaurantes, las personas pueden realizar diversas reservas un mismo día, sin embargo, lo que me hizo escoger particularmente este plugin, fue que podía indicar que hubiese solo una reserva al día. Así que el cliente puede seleccionar el día de su evento, la hora a la que inicia y sin más que un poco de información personal de contacto, generar su reservación. (Click en la imagen para agrandarla)

rr-screenshot2-thumb

 

3 Finalmente, solo debes configurar los mensajes tanto para el momento en el que el cliente llena el formulario, la confirmación de recibo de la reserva y dependiendo del caso, la aceptación o rechazo de la misma. (Click en la imagen para agrandarla)

rr-screenshot3-thumb

 

Como ven, es un plugin que, pese a que no estaba hecho para este propósito en particular, con unas pequeñas modificaciones ha quedado de lujo. Si quieren ver el resultado final en vivo no duden en visitar http://tap.pics/precios

 

flattr this!

September 05, 2014

Wallpapers: Paisajes de San Cristóbal

El sábado pasado asistí a la boda de Kelvin y Elisa como su fotógrafa y, en medio de tanta locura logre capturar dos fotografías que para mi, resumen lo que ha sido vivir este primer año en la hermosa ciudad de San Cristóbal.

San Cristóbal es la capital del estado Táchira, uno de los estados fronterizos de Venezuela, ubicado a solo 57Km de Colombia.San Cristóbal es llamada “La ciudad de la cordialidad” y no en vano, uno de los primeros “shocks culturales” que tuve al mudarme acá, fue que la gente nunca se olvidaba de dar los buenos días ni las gracias, y eso es algo que lamentablemente el resto del país ha perdido.

Es un estado andino, por lo que sus paisajes montañosos y su clima fresco, predomina casi todo el año; y como buena aurinegra, no puedo dejar de lado el hecho de que, a diferencia del resto del país donde el Béisbol es el deporte del que todos hablan durante todo el año; acá se vive y se respira fútbol y ciclismo todos los días.

Son un par de fotos que si gustan, pueden utilizarlas como wallpapers, y de esa forma, llevarse un pedacito de este cielo donde ahora estoy viviendo. Gracias a Kelvin y Elisa por dejarme ser parte de su boda… y gracias a San Cristóbal por regalarme estos paisajes cada día.


IMG_4491.redimensionado

IMG_5200.redimensionado

flattr this!

September 03, 2014

WLMRO 2014
I am a bit late writing about this here, but on September 1st a new edition of the Wiki Loves Monuments photography contest started globally, with 34 countries registered to participate.

It is happening in Romania too, for the 4th time (I am again part of the team) and for us the start is promising so far: in the mid of the 3rd day we are well past the 1k images mark, something which happened much later (7 to 13 days) in the previous editions. Let's see if the contributors (and this includes you, my readers!) will be able to keep up. BTW, this year our prizes improved too.
Chiajna ruine 01
Filtros de Color con GIMP

Una de las cosas mas divertidas que puedes hacer cuando tomas fotografías es utilizar filtros y tienes dos formas, la forma física, y la forma digital. La forma física es tan sencillo como agarrar un papel plástico transparente  y hacer distintas rayas de colores con marcadores, pero hay una forma más fácil de hacer un filtro de color y eso es usando las aplicaciones que ya conocemos. En este caso utilizaremos GIMP.

filter-detail

La fotografía editada hoy es de la boda a la que asistí el sábado pasado, así que pronto tendremos otro video de bodas, y porque no… un tutorial de Kdenlive!

IMG_5171_edit.redimensionado

Para este tutorial, lo único que tienes que saber utilizar son las aplicaciones libres que tienes en la suite de cualquier distribución de linux, ya que no importa que tan experto seas en la edición de fotografías, unos pequeños trucos pueden hacer que tu fotografía mejore y que se vean completamente profesionales.

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="315" src="http://www.youtube.com/embed/OAwhusvXIFs" width="560"></iframe>
Youtube Link: http://youtu.be/OAwhusvXIFs

flattr this!

August 27, 2014

5 UX Tips for Developers

I wrote an article walking through 5 UX Tips for Developers over at the Red Hat Developer blog. They are just some general suggestions for improving applications that are geared towards developers without training in UX. If this sounds like something that might be useful to you, feel free to take a look:

5 UX Tips for Developers

Thanks :)

August 23, 2014

Gmic available in Fedora repository
It appears GMIC is now available in Fedora repository meaning it will be included in Design Suite 21 as replacement of the obsolete GREYstoration by default. That plugin is very useful for the excellent tutorials from Pat David who also contributed to the GMIC project thus removing the need to manually compile and install it.
Winner F21 supplemental wallpaper

The voting phase for supplemental wallpaper is closed now and the results are there. But is time to look a little bit back on the contest this time. We had this time lesser contributions as last time, we got 87 submissions where on the end 83 was accepted. Last time we had 114 from 117 submissions. Also this time the quality of the submissions was lower as last time.
One of the reasons for this is, the results of the last votings, I have spoken with some of the contributors where did contribute high quality content, why they not contribute this time.
I will find a solution how we can raise the quality of the submissions again. There are several solutions in my head. But for now is time to show the winner pictures which will get packaged.

If you are interested in all the results you can find them in Nuancier.

August 18, 2014

Estabilizar videos en Linux con Transcode y Vid-Stab

Tener una cámara que grabe videos es algo que siempre quise, sin embargo, no tengo un estabilizador de imagen, por lo que aunque tengo una calidad increíble, el movimiento que genera mi pulso no ayuda para nada. Es por eso que decidí ver que opciones tenía en Linux y me conseguí con Vid-Stab, el cual permite estabilizar la imagen. vid-stab es un plugin para transcode, por ende, lo primero que debemos instalar es transcode:

[tatica@susan Descargas]$ su -
[root@susan ~]$ yum -y install transcode

Ahora, solo debemos bajarnos el plugin, descomprimirlo e instalarlo: (Verifica la última versión en: http://public.hronopik.de/vid.stab/download.php?lang=en )

[tatica@susan Descargas]$ wget -c http://public.hronopik.de/vid.stab/files/vid.stab-0.98b-transcode-1.1-binary-x86_64.tgz
[tatica@susan Descargas]$ tar -zxvf vid.stab-0.98b-transcode-1.1-binary-x86_64.tgz
[tatica@susan Descargas]$ cd vid.stab-0.98b-transcode-1.1-binary-x86_64
[tatica@susan vid.stab-0.98b-transcode-1.1-binary-x86_64]$ ./install.sh

Así de sencillo es instalar el plugin, ahora vamos a estabilizar nuestro video. Esto generará un archivo trf donde se almacenará la información de los fotogramas que luego serán afectados por la transformación que transcode realizará.

[tatica@susan Videos]$ transcode -J stabilize -i ORIGINAL.mp4

Una vez obtenido el archivo trf, es momento de transformar el video:

[tatica@susan Videos]$ transcode -J transform -i ORIGINAL.mp4 -y xvid -o ESTABILIZADO.mp4

Y eso es todo! Siempre puedes agregar opciones adicionales tanto para mejorar la salida, como para cambiar el codec o incluso, para aplicar una reducción aún mayor del movimiento generado por el pulso u otros elementos.

Me tomé la libertad de hacer una prueba y tomar un video de Gris, el consentido de la casa. Perdí un poco de calidad, sin embargo, la estabilización funcionó a la perfección.

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="315" src="http://www.youtube.com/embed/Y-DTBXulhlc" width="560"></iframe>

Youtube Link: https://www.youtube.com/watch?v=Y-DTBXulhlc

flattr this!

August 14, 2014

Flock 2014: Report

Flock 2014 took place in Prague this year. Here’s a photo to start with:

Tshirt ;)

Although Flock wasn’t the first FOSS/Dev/Tech conference I have been to, it was my first Fedora-specific event. Definitely special in it’s own way - most of the speakers and attendees are from within the Fedora community, so basically every third person is someone you have chatted with over irc, seen on planet, or is someone whose wikipage you have stumbled upon at some point. Which means, you walk to the end of the corridor, look at a person’s badge and say “Oh, so YOU are that guy!”

I wouldn’t say I attended a lot of the talks, since many of them would go over my head; but I did spend a good time interacting with the people present & offered to help with their projects & found potential contributors for mine. After all, the Flock organizers were awesome enough to live stream and upload all the sessions on YouTube (I’m still watching some): Flock channel on YouTube.

First day started with the opening by Matt, followed by a keynote on how FOSS was accepted in the EU by Gijs Hillenius. It was inspiring; I was left wondering how I can make an impact at least at the University level for a start. The next one I attended (online though) was on the State of Fedora Fonts, by Pravin Satpute.

I spent most of the remainder of the first day in the hackroom, reviewing slides for my talk, scheduled for later during the day. Mine followed Marina’s session on Gnome OPW which I attended in part - she did a great job of outlining how the community had succeeded in increasing participation of women within FOSS communities, events and projects. Her talk also reminded me that Marie (riecatnor) was here at Flock! I’ve known Marie for a while through the Fedora design IRC, but we hadn’t met in person.

Soon after, I did a talk called the Curious Case of Fedora Freshmen. It covered how Freshmen found it difficult to cope up with more experienced folk speaking complex things to them or simply not paying enough attention. I brought up various programs that would help Freshmen, should they be worked on. The talk was followed by a pretty extensive discussion. I’ll start Wiki pages working on some of the stuff I brought up during the session within a couple of week’s time. Slides for my talk are here and the video is here.

One interesting session I attended was by Chris Roberts and Marie Catherine Nordin - on Fedora badges. Chris did a quick run through about how fedmsg awards badges, and Marie followed up with her Fedora badges internship (which I have been impressed with like forever). Post-session, I introduced myself to Marie and we’ve been super friends since! :D

In fact, at this point, you should read Marie’s blog post about Flock. It covers a bit of what we did over our own impromptu hackfest - as she calls it ;) Marie spent a great deal of time explaining me how to play with nodes and we worked a bit on Waartaa’s logo. She also did a Glyph from scratch, it was quite amazing!

Snake man!

Among other sessions I attended were one on state of the Ambassador’s Union by Jiri, Advocating Fedora.next by Christoph, Improving Ambassadors Mentor program by Tuan (online) and Meet your FesCo (filled with Josh Boyer’s humor).

Fun stuff: On the first evening was FudPub, where we competed over who can take in more beer ;) Thanks to the organizers, we were on a boat another evening. We did a tour of Prague during the night - pretty mesmerizing! On other days, Gnokii took us to Budvarka, where some of us had lots of local food and beer ;)

Budvarka

On final day, Marie, Ralph, Toshio, Pingou, Arun and I, among others went on a quick city trip before we were headed home :) I’ll have to say, I’m now richer in terms of memories and a few badges ;)

Me in Prague

I’d really like to thank the Fedora community for having supported me on this trip! You guys deserve a badge ;)

August 13, 2014

Podcast: Puntaje en darktable

Y seguimos con los podcast de utilidad, ya que es importante aprender a organizarse antes de comenzar a trabajar. Hoy hice un podcast bastante sencillo (pero necesario) sobre como utilizar el sistema de puntajes de estrellas y colores de darktable. Espero les guste este podcast y me cuenten su experiencia utilizando ambos sistemas.

Las fotos fueron tomadas en la pasarela de Runway Models 2014 en la ciudad de San Cristobal, si quieres ver un resumen, no dejes de visitar mi portafolio profesional en tap.pics

Url Directa: http://youtu.be/ZIfX1xlKpMg

<iframe allowfullscreen="allowfullscreen" frameborder="0" height="315" src="http://www.youtube.com/embed/ZIfX1xlKpMg" width="560"></iframe>

flattr this!

August 07, 2014

¿Necesitas iconos? OpenClipart e IconFinder

Una de las cosas más útiles cuando hablamos de diseño, son los iconos. Bien sea porque estés desarrollando una aplicación y necesites un pack completamente inédito, o porque estás diseñando un banner y quieres agregarle algunos elementos que lo hagan resaltar.

Lo cierto es que hoy en día hay muchos recursos donde puedes conseguir gráficos libres, y si lo necesitas, gráficos que puedas licenciar. Por eso hoy les contaré un poco sobre OpenClipart, un website con miles de gráficos vectoriales libres; y IconFinder, un sitio que te permite liberar tus iconos tanto de forma gratuita como licenciada (paga).

openclipart

OpenClipart cuenta hasta la fecha con 54282 gráficos completamente libres bajo CC0 1.0, lo que quiere decir que  la persona asociada al trabajo ha otorgado su trabajo de forma pública y cede todos sus derechos de autoría. Puedes copiar, modificar, distribuir y trabajar con ellos de forma comercial, sin tener que pedir permiso.

Cuentan con elementos individuales, colecciones y existe una sección de “solicitudes” a la que los artistas pueden acceder cuando se les acaban las ideas. Es una comunidad bastante amable, que contestan los correos casi de forma instantánea y que no te hace esperar para subir tu contenido. Todas las cargas son única y exclusivamente en SVG (Vectores)

iconfinder

En IconFinder, puedes encontrar tanto iconos individuales como paquetes completos, sin embargo, para quienes subimos contenido, solo nos permiten subir paquetes ya en formato zip. A diferencia de OpenClipart, permiten que los artistas suban contenido tanto en svg, como en png y otros formatos, siempre y cuando se respeten los tamaños que piden.

Como no todo en la vida es gratis y los artistas tienen que vivir de algo, estos pueden escoger si desean subir de forma gratuita sus packs de iconos o si por el contrario, prefieren colocar un precio tanto por el pack completo como por cada icono de forma individual. Si por ejemplo, estás desarrollando una aplicación en tu empresa, lo ideal es que compres un pack de iconos o hagas un requerimiento directo. En temas de licencias, IconFinder obtiene la licencia completa sobre las creaciones subidas a la web, y tienes que esperar entre 3-4 días para que tus iconos sean publicos luego de subirlos.

Ya tienes dos opciones tanto para subir tu arte como para descargar y/o comprar iconos. Cuéntame, si ya has utilizado alguno y ¿Cual te agrada más y por qué?

flattr this!

Check out Flock Day 2’s Virtual Attendance Guide on Fedora Magazine

flock-logo

I’ve posted today (Thursday’s) guide to Flock talks over on Fedora Magazine:

Guide to Attending Flock Virtually: Day 2

The guide to days 3 and 4 will follow, of course. Enjoy!