Some projects I’m really interested in right now

Command Line Tools for XCode

Apple has released a package with the command line tools needed for writing software that is not Apple dependent. Now if you want to use things like homebrew, or if you want to write your programs that have nothing to do with the apple environment, you can. The download packs the compilers in aprox. 170MB. So if you don’t need the all bloat of XCode+iOS+Crap+BlaBla that usually is as a +4GB download you can now grab the light version.

d3py – Joining ggplot2 with d3.js

I love d3.js (more to this in a future post) and its ability to manipulate data, an I use it mainly to produce dynamic graphs for the web. I also love ggplot2 (Hadley Wickham) that is my workhorse plotting library in R. Now there is a library to do the same thing directly from python. d3py aims at bringing these two worlds together. I’m looking forward to explore this package, and integrating this in django! Woot!

Playing with Pull Quotes using CSS alone

A Pull Quote is a special case of quotation in the typographic industry where a small fragment of a paragraph text is highlighted in a distintive box or selection and still present in the main body of the text.

I wanted to do this for HTML without repeating the text to avoid duplicate content and to have a simple CSS style that I could use anywhere I wanted to use a pull quote. This is how I accomplished pull quotes with CSS alone.

<

p>The first thing I did was to define a style for the pull quote that will affect all elements of the class .pull

	.pull:before{
		width:230px;
		float:right;
		margin:0px;
		padding:10px;
 
		color:#4169E1;
		line-height:1.2em;
		font-size:20px;
		font-style:italic;
 
		content: attr(start) attr(title) attr(end);
	}

The first thing to notice is that I’m using the .pull:before pseudo-class so I can latter use the CSS content property. The first section of the rule just defines the float box of the element that I’m injecting. In this case it has 230px width. The second section defines the typographic style of the text to be used. Finally the third section is where the magic happens. I’m using the content property to insert 3 blocks of text that are retrieved from the properties of the span.

For example, the above pull quote HTML on the second paragraph looks like this:

<p>I wanted to do this for HTML without repeating the text to avoid duplicate content and to have a simple CSS style that I could use anywhere I wanted to use a pull quote. This is <span class="pull" start="– " end=" –" title="how I accomplished pull quotes with CSS alone"></span>how I accomplished pull quotes with CSS alone.</p>

As you can see in the bold selection, I’ve created an empty span that has attributes start, end and title defined. These allows me to use those attributes in the CSS style sheet and personalize the pull quote with starting and ending elements according to what I want to do.

Apple FileVault2 encryption cracked

Never really liked FileVault on the mac but the news that its encryption has been cracked just shows that whenever you can get your hand on a computer… you OWN it. Don’t really trust your encryption scheme as bullet proof safe. It will hit you right back in your face.

Want security? Don’t leave your laptop alone! Don’t put sensitive information on the computer. Don’t trust technology with important stuff. That’s the only way to ensure that confidential information doesn’t get compromised.

Well, but we are living in the XXI century aren’t we? Yes… but that is also the reason why we have all these security problems. For every advance we have we also have thousands of people trying to scrutinize those advances and not all of them are white hats.

Really like the new Firefox Web Developer Tools Interface

Firefox fast release cycle is something that you start by hating but then come to love (Even more that they are now adding long term support). The latest Firefox 10 release updated the Web Developer Tools and it is now a really cool way to inspect the pages your visiting (or developing). Also, Mozilla introduced a new JS scratchpad that is great for running JS code. I imagine it to very usefull when doing online d3.js development! Yeay!

Big Data: “The Great Disk Drive in the Sky….”

Big Data

Ars technica just published a story on how companies like Google, Amazon or Facebook are dealing with the petabytes of data they produce/consume. It’s a bit long but a must read for anyone interested in big data and the future of storage.

Very insightful aspects of their decision process and implementation details reveal that big data storage will always diverge before converging in the future (if ever). This really gives you a impression of How Big is Big in Big Data!

Is Twitter Evil?

Twitter is turning Evil?

You can’t service all of humanity if you allow the needs of politics to triumph over the needs of the people. And if you can’t service all of humanity, what is your relevance?

via Forbes – Twitter Commits Social Suicide

I don’t think that Twitter will fade out because, like Facebook, Twitter is too big to fail now. The problem is that these kind of measures (some might call them features) are now part of the process and not some kind of CIA tapping on the pipes. By doing automated self-censorship Twitter might be releasing a nest of wasps. That’s sad.

R in the Top 20 of Programming Languages

Programming languages come and go, but its nice to see what’s gaining momentum and what’s not. In the latest Tiobe report for January 2012 we can see some interesting surprises in the top 20 chart of programming languages. C is still highly demanded and closing on Java. Both account for 1/3 of the programming languages panorama.

Other interesting aspect is the fading of Python. Python lost half of it’s market share. Maybe this is because of Python 3 and the incompatibilities with Python 2.x that might have sent many programmers in search other solutions. Another problem might be GIL that hinders thread programming in Python in a time when programming is moving to the concurrent and distributed programming.

Also interesting is the rise of R. R is one of my favorite languages for science. It makes reproducibility of research results very easy (specially if you use Sweave with R) and for any kind of statistical analysis it is almost perfect. It also produces great plots for scientific publications.