Agile Programming

You're at Mabishu, a website about discovering quality on code, searching emerging technologies, and leading a simpler, more mindful coder life. This site was established in 2005 by Fran Diéguez, a blogger, software developer, and open source geek. Subscribe to the RSS feed for updates.

Written on April 17th, 2012

Setting up Jenkins in Ubuntu Precise 12.04 for PHP projects

jenkins logo Setting up Jenkins in Ubuntu Precise 12.04 for PHP projectsThis howto tries to clarify all the steps for setting up a Ubuntu Precise box as Continuous Integration server for PHP projects by using Jenkins.  In the next days I’ll write another post about how to configure a PHP project inside Jenkins. So let’s go:

Installing Jenkins server

Ubuntu Precise now has inside its repository the Jenkins server packaged for an easy installation. So installing jenkins now is as simple as running the next command:

sudo apt-get install jenkins

Read the rest of this entry »

Written on April 15th, 2012

Test your code with every change in your PHP files

tdd red green refactor diagram 300x277 Test your code with every change in your PHP filesApplying TDD to your PHP code is a big improve in your code as forces you to “think” the code before write it down. A common approach to TDD workflow could be:

  1. Write your test class
  2. Write your code that make pass the tests
  3. Refactor the code

If you take a closer look, between all the steps you MUST run all the tests for possible functionality breaks with every single change in the code, and make it manually could be a little disturbing.

So for this there are  tools that helps you track your code for changes and if changed will automatically run a bunch of actions. Read the rest of this entry »

Written on November 6th, 2011

Sending patches through mail with ‘git send-mail’

email git Sending patches through mail with git send mail
If you want to send code patches to your coworkers you don’t need to do strange things with different tools. Git has all the neccesary tools for handling this in a pretty way.

The idea is generate a patch from git and send to your coworker via email. After received the message they can import those messages directly into git.

Let’s see how all this works. Read the rest of this entry »

Written on August 30th, 2011

Thoughts about our privacy in social networks

Recently I had an interesting conversation in G+ about social network privacy policies. I supported the view that their privacy policies are mere posturing. The moment you upload content to any social network that content is no longer belong to you just because they can be analyzed and schematized by incredible software that tracks that vast flow of information.

Lets analyze some of them:

By clicking the “sing up” button in any of the multiple available social networks, the company that is behind, always retains a clause that they can use all your data uploaded to use it  ”internally” or by its affiliates. Among those affiliates we always can find in the web rumors that one of the intelligence agencies in the world (CIA) could be one of their investors in the dark.

In the case of G +:

G+ says explicitly in their policy content:

“We may share aggregate statistics about Google+ activity with the public, our users, and partners, such as publishers, app developers, or connected sites.”

and is still harder where in their  policy  they have regarding the use of G + by using our mobile device in which automatically get our geoposition as float. In their policy of sharing data they have 3 cases for which they can share user data without your consent:

“We have a good faith belief that access, use, preservation or disclosure of such information is reasonably necessary to (a) satisfy any applicable law, regulation, legal process or enforceable governmental request, (b) enforce applicable Terms of Service, including investigation of potential violations thereof, (c) detect, prevent, or otherwise address fraud, security or technical issues, or (d) protect against harm to the rights, property or safety of Google, its users or the public as required or permitted by law. “

The dangerous words in the previous paragraph are “reasonably reasons”. I ask, Who is the person/group/institution that says what is “reasonable” or not. Is a “reasonable” reason if a government ask Google/Facebook/other-social-network to give your data to them?

The case of Facebook is not far behind:

Facebook applies a dangerous policy to every shared  content (photos, people relations, streams, etc.)  so, they would become co-authors of these contents, and this reserve the right to make our data as they please .

The value of our data

At this point we can say “Well, we could delete that data, accounts and go. All fixed, isn’t it? They no longer have anything? “. Well, I have to say to you that this does not do anything. Not many months ago I read an article on Anglo-Saxon on-line diary (sorry, I’m not able to remember the direct link to that article) that said that even delete the profiles on social networks such harm was done.

Although the article was focused on internal rumors from Twitter, they commented that always exists “the big stream”, it was just a large amount of data generated by users in real time (business reviews, opinions, mass movements …).

One single “tweet” about company INSERT-YOUR-NAME-HERE does not have much commercial value, when it joins many many others they  can be used to perform market research among other studies.

Which company don’t want to spend some money (if they have enough) to get such magnificent flow of information? This will help to improve their market strategies to increase sales on their next  ultra-awesome “iThing”. And I only was talking about about business … think now about government doing mass predictions with the same informational flow.

Where do I go?

By this I do not want anything to justify latest WhatsApp and Blackberry Messenger acts, but I always unworthy when people protesting policies of some companies and performs such other assertions  directly on Facebook and G+, where their privacy policies are not better than WhatsApp and BMessenger ones.

Actually we live in a globalized world, where the latest panacea of ​​government agencies and research was the creation of these social networks, where they invest (usually by using intermediary Venture Capitals) and with this they give access to large streams of data to analyze what happens around the world in real time.

A possible solution to this problem could be Diaspora, a free software that lets you create your own social network, that runs by yourself in your own servers. But under my point of view is just an experiment that will “die by oblivion”. Yes, “die by oblivion” because social networks users begin to assess a social network when their on-line and off-line live have not distinguish. Facebook without friends is more boring than a soap opera. Without interesting people to follow or people that follows you and  that generate interesting conversations, Twitter is less interesting than lose an afternoon reading articles at perezhilton.com .

I already know, we always try to give a return for all this … but then we’re “forced by the mass” to use social networks.