Posts

Showing posts from 2013

Go Google Go! A Language on Full Throttle

InfoWorld (12/18/13) Serdar Yegulalp

Go, Google's C-like language, recently was ranked at the top of TechEmpower's eighth round of Web framework benchmarks. Go proved to be the strongest in the JSON serialization test, achieving the best peak performance and the lowest latency scores. The high performance with JSON serialization indicates that Go is being performance-tuned for the same set of workloads most directly associated with frameworks such as Node.js. Node.js' lowest performance was at 14.3 percent of Go's speed, while the best was at 69.1 percent. Node.js has the advantage of a broad software development culture--not just through its package repository, but also because there are many more JavaScript programmers than there are Go programmers. Another newcomer in the benchmarks is Facebook's HipHop PHP VM (HHVM), an open source project that compiles PHP into C++ instead of interpreting it. HHVM was designed to replace Facebook's existing PHP-execution fr…

Apache 2.4 new FilterProvider syntax

This for exemple

FilterProvider SSI INCLUDES resp=Content-Type $text/html
will become

FilterProvider SSI INCLUDES "%{CONTENT_TYPE} = 'text/html'"

HOWTO remove all dangling commits from your git repository

A good explanation of the dangling (fr: ballants) commits source tells you how they get created.

git fsck --fullChecking object directories: 100% (300/300), done. Checking objects: 100% (10658/10658), done. dangling commit x.... dangling blob y.... dangling commit z.... dangling blob w.... dangling blob a.... dangling commit b....
How to quickly remove those?
git reflog expire --expire=now --all git gc --prune=now

push and delete remote branches

This is an action that many Git users need to do frequently, but many (including the me!!) have forgotten how to do so or simply don’t know how. Here’s the definitive guide if you’ve forgotten. For this reason I put it on my dev site on cofares the with free articles resources galaxy of sites.

So you have checked out a new branch, committed some awesome changes, but now you need to share this branch though with another developer. You can push the branch up to a remote very simply:

git push origin <pascal>

Where origin is your remote name and <pascal> is the name of the branch you want to push up.

Deleting is also a pretty simple task:

git push origin :<pascal>

That will delete the newfeature branch on the origin remote, but you’ll still need to delete the branch locally with

git branch -d <pascal>


Programming Smart Molecules

Harvard University (12/12/13) Caroline Perry

Harvard University researchers have shown that an important class of artificial intelligence (AI) algorithms could be implemented using chemical reactions. The researchers note that the machine-learning algorithms, which use a technique called "message passing inference on factor graphs," are a mathematical coupling of ideas from graph theory and probability and already function as critical components of everyday tools. They say that in the long term, these theoretical developments could lead to "smart drugs" that can automatically detect, diagnose, and treat a variety of diseases using a cocktail of chemicals that can perform AI-type reasoning. "This work shows that it is possible to also build intelligent machines at tiny scales, without needing anything that looks like a regular computer," says Harvard professor Ryan P. Adams. The research also could produce methods for analyzing natural biological reaction p…

node.js

AN EXAMPLE: WEBSERVERThis simple web server written in Node responds with "Hello World" for every request. var http =require('http'); http.createServer(function(req, res){ res.writeHead(200,{'Content-Type':'text/plain'}); res.end('Hello World\n');}).listen(1337,'127.0.0.1'); console.log('Server running at http://127.0.0.1:1337/');To run the server, put the code into a file example.js and execute it with the node program from the command line: % node example.js Server running at http://127.0.0.1:1337/Here is an example of a simple TCP server which listens on port 1337 and echoes whatever you send it: var net =require('net');var server = net.createServer(function(socket){ socket.write('Echo server\r\n'); socket.pipe(socket);}); server.listen(1337,'127.0.0.1');

Kernel boot parameters

Introducing OpenPGP keys (launchpad and ubuntu)

An OpenPGP (also called GnuPrivacyGuard) key allows you to sign documents, such as emails or text files, using a digital key.There are two parts to an OpenPGP key: one public that you share with the world and the other private, which you should guard closely. Both are standard text files that make up a digital signature.

In Launchpad, you can use your OpenPGP key to identify yourself when using the bug tracker's email interface, when uploading distribution packages and when signing a code of conduct.
Generating your key in Ubuntu (using Seahorse or others)

Generating an OpenPGP Key
The core package required to start using OpenPGP, gnupg, is installed by default on Ubuntu systems, as is seahorse, a GNOME application for managing keys. It is called "Passwords and Keys" in Ubuntu. There are several programs which provide a graphical interface to the GnuPG system. Enigmail, an OpenPGP plugin for Mozilla Thunderbird. Enigmail was available in the "Main" repository throu…

Virtual user et alis dans postfix

Postfix is a great mailer, but if you're new to administering Postfix, finding your way around can be difficult. For example, just finding information on adding users to a Postfix system can be quite a trial.

Postfix is a great mailer, but if you're new to administering it, finding your way around can be difficult. Here's how to get started.

In part, this is because Postfix can be set up in a number of ways. Some installations use Postfix alone, others use Postfix in conjunction with other apps and store user information in MySQL. You can have users who have actual accounts on a system, or you can have users on virtual domains that don't have a login but still receive mail. Or you might want aliases that include several users, so everybody on the "marketing" list gets mail or all folks in sales, legal or development can receive messages.

For this tip, I'll assume that you've inherited a Postfix domain and want a way to add users or aliases quickly. Addin…

Mysql realm in glassfish

JDBC Realm and Form Based Authentication with GlassFish 3.1.2.2 and Primefaces 3.4 One of the most popular posts on eisele blog is the short tutorial about the JDBC Security Realm and form based Authentication on GlassFish with Primefaces. Here we go: http://blog.eisele.net/2013/01/jdbc-realm-glassfish312-primefaces342.html?m=1

Dépôt et développement social par l'auteur, hithub et java.net

10 reasons Windows 8 will be painful for developers

73By October 24, 2012, 12:00 AM PDT Takeaway: If you plan to develop Windows 8 native apps, be prepared for some hurdles. Justin James looks at some of the biggest problems you’re likely to face. Ever since the release of the Windows 8 Developer Preview, people have had a lot to say about the experience of playing with the new OS. But few folks are talking about the changes it represents for developers. Windows 8 is the biggest update to the Windows development model since the move from Windows 3.X to Windows 95. While there are lots of good things, there are also a lot of pain points. If you are looking to develop Windows 8 native applications with the new UI and WinRT API, be careful of these 10 things. Editor’s note: This is an update of the original post, which published in December. 1: Market reboot If you want your applications to be fully compatible with Windows 8 (including running on ARM CPUs), you’ll need to do a full rewrite in Windows 8/WinRT. This may be great f…

Set Apache Password Protected Directories With .htaccess File

Q. How do I protecting a directory in Apache on linux? A. There are many ways you can password protect directories under Apache web server. This is important to keep your file privates from both unauthorized users and search engines (when you do not want to get your data indexed). Here you will see the basics of password protecting a directory on your server. You can use any one of the following method: Putting authentication directives in a <Directory> section, in your main server configuration httpd.conf file, is the preferred way to implement this kind of authentication.If you do not have access to Apache httpd.conf file (for example shared hosting) then with the help of file called .htaccess you can create password protect directories. .htaccess file provide a way to make configuration changes on a per-directory basis. In order to create apache password protected directories you need: Password fileAnd Directory name which you would like to password protect (/var/www/docs) Ste…

Python

Python is an easy to learn and powerful programming language, with a comprehensive standard library that provides functions and interfaces for almost any task. It is object-oriented, extensible and interpreter-based, which means it scales well to all types of projects, from small scripts to extensive code bases. Its elegant syntax allows writing code that is extremely readable and concise.
http://www.python.org/

QML for ubuntu mobile

QML at the heart of a set of technologies to bring the Ubuntu experience to mobile devices. QML is an a powerful JavaScript-based declarative language for designing intuitive, natural and responsive user interfaces. Marrying stunning design with a high-performing framework, the sky's the limit.

Howto get the Ubuntu SDK preview With the latest ubuntu 13.04 : 
sudo add-apt-repository ppa:ubuntu-sdk-team/ppa && sudo apt-get update && sudo apt-get install ubuntu-sdk

How to clone a single branch in git?

git clone -b <branch> <remote_repo>

The Science in Computer Science

Communications of the ACM, Vol. 56, No. 5, May 2013 Peter J. Denning, editor-in-chief of Ubiquity, makes the case that computer science is indeed a “science” and that it is fundamentally distinct from any of the STEM fields. As Denning points out, how we define “computer science” matters for educators, researchers and practitioners. When it comes to education, for example, viewing computer science as a “science” will elevate it in any discussion of funding priorities for building a competitive IT workforce. When it comes to the workplace itself, it means that computer scientists will be seen as genuine collaborators with reliable predictive models and valuable analytic tools, rather than just as professional coders. Denning points out that two external factors – the rise of computational science and the discovery of natural information processes - have spawned a science renaissance in computing. Experimental methods have regained their stature because they are the only way to understa…