One of the most inspiring speeches you’ll ever ear from the man who created and got fired from his own multimillion dollar company and claims that was the best thing that could have happened.
Steve Jobs commencement speech at Stanford University in 2005. It’s really a great speech to listen to and to get inspired for the new year.
Archive for December, 2009
Steve Jobs Commencement Speech at Stanford
Optimizing your website for Bing
The results made me curious and this lead me to find several aspects concerning search engine optimization for different search engines. Although the basic SEO techniques are the same (backlinks, title, url, headings, bolds, etc) there are some differences on how Bing and Google interpret the same results. One way to prove this using Bingle a search engine that shows Bing and Google results side by side. You might find the first results are pretty much the same no matter what the search but from position #5 and down you’ll start noticing different results on the search engines as the following image shows:
Since Bing’s search algorithm is not for public display, some SEO experts tested several search queries in order to find possible patterns to interpret what Bing weights and doesn’t and came across the following conclusions:
Bing Search ranking factors
The following list show’s several points compared to Google seo optimization techniques
- Inbound links anchor text. Bing gives more weight than Google to this so think well when linking internally. Although the quality of these inbound links can provide a good value to the page you are linking to, Bing attributes more weight to the anchor text of this link rather than the quality of the page the link is coming from.
- Domain age and site authority are more important on Bing than on Google.
- Bing seems to be more Flash SEO friendly.
- On-page optimization matters. Bing seems to give more weight to on-page factors than Google does.
- Number of backlinks is less important to Bing. It’s still in the gray zone if the nofollow attribute is or not a ranking factor
- Fresh content weights less. Bing prefers older results to new fresh content
For now it is too early to say which factors are of primary importance with Bing. But the fact that their search results are relevant means that their algorithm is really precise. Well, maybe the relevant results in Bing are due to the fact that web masters were taken by surprise and they haven’t had the time to optimize for Bing. As a result, the content is authentic, there are no SEO gimmicks and artificial pumping. We’ll see if this will stay so in the future, when web masters learn how to optimize for Bing as well!
Bing Optimization – How to optimize your website for Bing
Like Google, Bing has it’s Webmaster Tools an excelent way to help improve your results and track your website performance. Bing also has several articles that might help you:
- Guidelines for successful indexing
- Search Engine Optimization for Bing although very useful, doesn’t add much to what I’ve said previously.
If you want good results keep creating good, original content, apply basic seo practices and techniques and after having your base ready start improving for specific search engines like Google, Bing and Yahoo but keep in mind, users come before search engines.
I’m interested in what you are thinking so consider leaving a comment
Local Distance project
Recently I discovered a project called Local Distance which is simply amazing. It creates a completely new image from other images through vanishing points. The process will result in countless fragments from the several images. Local Distance will then merge the fragments into multilayered shapes, creating a new image with spectacular results.
This project is created and maintained by Torsten Posselt, Frederic Gmeiner, and Benjamin Maus.
How to install SQLite3 for Ruby on Rails on Windows
For what I understood the Rails team decided that development was easier when using SQLite instead of MySQL thus making SQLite3 the new default for RoR versions after 2.0.2.
Installing SQLite 3 on Windows
- Go to SQLite official download page and look for Precompiled Binaries For Windows and click on the .zip file.
In my case the most recent version is sqlite-3_6_20.zip so let’s download the file. - After downloading the file extract the sqlite3.exe file to Ruby bin directory (Ruby » Bin).
- Now you need to download 2 extra files a .dll file and a .def file (damn you windows). On SQLite official download page look for sqlitedll-(version) being version the current version of SQLite. In my case this is sqlitedll-3_6_20.zip. You can find this file under Precompiled Binaries For Windows section on the download page.
- After downloading the sqlitedll zip file you need to extract the sqlite3.dll and sqlite3.def files to Windows System32 folder.
- After inserting the dll and def files on System32 folder open your command line and type
gem install sqlite3-ruby - Now SQLite3 should be properly installed on your Windows RoR server.
Start your RoR server (Command line » ruby script/server) or use NetBeans. - Open a browser window and type http://localhost:3000. You should get a welcome page saying «Welcome aboard». Click on the link called “«About your application’s environment» too see some information about your server. You should have a line saying Database adapter sqlite3

And that’s it. You have installed SQLite on your Windows RoR server. Feel free to comment.
jQuery accordion
Resources
For this tutorial I will try to exclude the use of any unnecessary file and will stick to the basic, feel free to add and customize your project as you wish.
- For jQuery library I used Google Code AJAX Libraries API
- Text / Code editor. I used Notepad++, my personal favorite for fast editing / coding.
- Some free time and curious mentality
Building the HTML Structure
I’m assuming you know HTML and CSS as I will not explain what each tag does.
<ul id="accordion"> <li> <a href="#">Item 1</a> <ul> <li><a href="http://muiomuio.net/category/wordpress-themes/" target="_blank" title="WordPress Themes (external link)">WordPress Themes</a></li> <li><p>This is a paragraph with some text</p></li> <li><a href="http://twitter.com/mariorandrade/" target="_blank" title="Twitter (external link)"><img src="http://muiomuio.com/wp-content/themes/lightword/images/mariorandrade.png" alt="Follow me on Twitter" title="Don't forget to follow me on twitter" /></a></li> </ul> </li> <li> <a href="#">My Skills</a> <ul> <li>HTML / XHTML, CSS</li> <li>Adobe Photoshop, Fireworks</li> <li>PHP, jQuery, Ruby on rails</li> <li>And a whole lot more</li> </ul> </li> <li><a href="http://muiomuio.com/web-design/jquery-accordion/" target="_blank">jQuery Accordion tutorial</a></li> <li> <a href="#">Resources</a> <ul> <li><a href="http://code.google.com/apis/ajaxlibs/documentation/index.html#jquery" target="_blank">Google jQuery link</a></li> <li><a href="http://docs.jquery.com/Tutorials" target="_blank">More jQuery tutorials</a></li> </ul> </li> </ul>
As you can see I created an unordered list with the ID accordion. Inside that list I have a link that works as header to the content inside. The content is hold inside other unordered lists.
Adding the jQuery
Personally I add all javascript at the bottom of the page right after the </body> tag due to accessibility and usability purposes.
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
function Accordion() {
$('#accordion ul').hide(); // hide all unordered lists inside the accordion list
$('#accordion ul:first').show(); //show the first unordered list inside the accordion
$('#accordion li a').click(
function() {
var checkElement = $(this).next();
if((checkElement.is('ul')) && (checkElement.is(':visible'))) { //if you click on an unordered list and this list is opened (visible)
return false; //nothing happens
}
if((checkElement.is('ul')) && (!checkElement.is(':visible'))) { //if you click on an unordered list and this list is not opened (visible)
$('#accordion ul:visible').slideUp('normal'); // the list that is visible will close (slideUp)
checkElement.slideDown('normal'); //the list you clicked will open (slideDown)
return false;
}
}
);
}
$(document).ready(function() {Accordion();}); //when the document is ready to load the script it iniciates the function
</script>
Now you have your accordion built and functional you need to give it some visual appeal.
Adding CSS to jQuery Accordion
<style type="text/css">
ul#accordion {
padding:0;
border:1px solid #ececec;
width:200px;
}
ul#accordion li a {
background:#222;
padding:0.5em;
display:block;
color:#ececec;
font-weight:bold;
font:0.8em Verdana, Arial, Helvetica, sans-serif;
text-decoration:none;
}
ul > li {
list-style:none;
padding:0;
margin:0;
}
ul#accordion li ul {
margin:0;
padding:0;
}
ul#accordion li ul li {
padding:2px;
margin:0;
border-bottom:1px dashed #ccc;
font:0.8em Verdana, Arial, Helvetica, sans-serif;
}
ul#accordion li ul li a {
padding:5px 0;
font:0.8em Verdana, Arial, Helvetica, sans-serif;
color:#222;
background:none;
}
ul#accordion li ul li a:hover {
color:#C90;
}
</style>
And there you go. This is a very simple, valid and accessible jQuery vertical accordion tutorial. Feel free to play with the CSS. It’s easily adapted to an horizontal accordion.
If you liked this tutorial please help spreading the word by sharing this tutorial with other users. Thanks in advanced.
