Skip to content

tech

MAC address spoofing on OS X

Sometimes you need to connect to a network, which is designed to only allow connections from certain network interface cards, filtered by their MAC address. This filtering can be avoided by changing or spoofing your computer's MAC.

sudo ifconfig en0 lladdr 00:00:00:00:00:00 # <- the new MAC address
sudo ifconfig en0 down
sudo ifconfig en0 up

Your original Media Access Control address will be restored after a reboot.

Show hidden files in the Finder

It's sometimes necessary to view and manipulate files hidden in your system. Unfortunately the Mac OS X file browser, the Finder, does not display these files by default and has no easy way to access this option. This simple hack allows you to choose whether hidden files are displayed or not.

Browsers 2009: We have a winner!

I downloaded the newest Beta versions of three popular OS X browsers: Opera, Safari and Firefox. To see which one has the best performance, I ran some benchmarks. Here are the results. They pretty much single one browser out as the best.

The Open Spirit

We're living in a brave new world, which is trying to go beyond the modes of industrial times
and transgress the corporate rules of conduct. We're living in a world in which millions of people are defiant of the multinational super-companies' reign. This world is not clearly visible yet, but it is slowly emerging, maturing... It is now a rebelious teenager, but it may become beautiful and wise... truly post-modern.

Community
I'm talking about a humble community, which consists of numerous people who rarely even speak to each other, and yet they work together on projects grander then the undertakings of the largest of companies. They sit in front of their computers and code. Anybody who has ever done any programming of their own accord, knows how rewarding and enjoyable coding is, addictively so. But it's quite a lonely enterprise, so people like to share their work with others. With the blossoming of the Internet, the small hobby-club groups of coders suddenly became global.

Open source
This introduced an incredible change in the potential of what these groups could achieve. The perfect illustration of this story is the operating system Linux. Started as a graduate project by one student (the now legendary Linus Torvalds) it was posted on a news group. Linus told others about his idea of developing a Unix-like system for the Intel PC architecture and gave them his source code! The source, or the actual code, that a programmer writes, was usually kept as the biggest secret of any software developer.

What followed was a spectacular, unprecedented development. People from all over the world started adding bits and pieces to the code of the Linux Kernel, making it more and more powerful, while maintaining the main feature of the system: stability. Soon afterwards the system developed into a fully functional OS, operating primarily low-end servers and PCs of geeks around the globe. It started to become more and more popular and is now the fastest growing system in terms of WWW server numbers. With new versions the most popular distributions are becoming as simple to install as Windows and it is projected that Linux will be installed in 38%(!) of all new computers in 2004.

And you have to realize -- this operating system, and the huge amount of work that went into it was done without money. It was developed without even the aim of making money, by people who decided to share their time and knowledge with others.


Open standards
In the Linux world, and more broadly in the Opens Source Community everything is free and open. The most popular progamming languages now (Java, Perl, PHP, to name a few) are all open source. You can download the source code at any time and learn from it, improve it, wallpaper your room with it, whatever...

Practically all the software available for Linux is free, usually available via the GNU General Public License, which states that you can use and even modify(!) the software in anyway you like as long as all the versions remain free.

Standards are the backbone of the computing game. Before you can exchange any data with anyone, you need to agree on the standard way in which this data will be endoded. The Open Source Community makes all standards publicly available in RCF(Request for Comments) documents. Everyone, who wishes may easily make their software compatible with any other, simply by complying with the requirements of the standards.

This is a far cry from the policies of other companies (especially Micro$oft), who keep their software source secret, their standards (even the omnipresent .doc Word format!!!) secret, and even go out of their way NOT to implement the popular standards in order to make them obsolete. I highly recommend this article, to anyone who wants to know why geeks hate M$. It talks about everything from bloatware to mutilation of standards.

Information is free
The spirit within the Community is much more hippie-like. Everything is shared, everyone helps everybody else (it's a pleasure reading mailing lists sometimes), everything is open and common.
People often say that that is no way to conduct any business and that the Community, even though it may be a beautiful idea, will have to succumb to the rules of the market. I disagree. What the community develops are tools, not products. These tools can and are, afterward used to produce services and inventions which become sold. There is no need to worry about a lack of things to sell. Thanks to the tools developed via opensource online services can function.

If the Community can be likened to anything else I would say that it would be the scientific community, where knowledge is shared and combined to aid ever further research. It isn't true that all scientists work for money-hungry corporations. In fact, most work in Universities, without a frantic longing for riches. Science is also open -- everyone shares their results with everybody else, that's the whole point.
And no-one is questioning the economic sense of science, are they? We know that science develops tools, which are later used to produce goods and services, which can be harvested.

Open spirit
In this post-modern fashion the world is trying to evolve beyond it's former form. And even if it sometimes seems otherwise, I believe we are aiming in the right direction. In accordance with the Open Spirit, we demand corporate transparency, the rule of public law (on scales both local and international), and general fairness.

Slogans of anti-globalization, even if misguided (or rather unguided, due to a lack of a program) hail developments and concepts accordant with this ideal: ecology, fair trade, "think globally -- act locally", etc.
We're slowly geting there, and hopefully, if there aren't too many bushes along the way, we shall one day see a truly post-modern, Open world.



RELATED:
What M$ is trying to do to fight OpenSource.

Spain all for Open software...

New approach to Anti-Spam

With all the talk about anti-spamming laws soon to be introduced in the US I thought I would share some of my thoughts...

As far as legal concerns go, I believe that the anti-spam laws should be tough. I think the USA would be best off with a law similar to the one in the European Union, where it is illegal to send any unsolicited email. Unfortunatelly America has already developed a strong lobby, which wants to use unsolicited e-mail as a "genuine" promotional channel (i.e. they want to send you spam from their own address). The question would be: do we really need more advertisments? The european law is simple and ends confusion.

The second issue deals with programming.
The anti-spam software of the day works using either a 'black-list' or 'white-list' mechanism.
A black list contains all adresses/topics/key-words associated with spam. If it encounters any of these words it deletes the e-mail, of moves it to a special spam folder of the e-mail client.
A white list works the opposite way: it looks for known e-mail addresses, from which mail is accepted, rejecting everything else.

Both these mechanisms have faults:
-- black lists cannot work agains the real scum spammers, who desguise themselves as a friend of yours, who wants to remind you of a meeting or something.
- white lists only accept some e-mails, making it impossible to recieve e-mail form someone you did not previously have contact with.

Solution:
1. Use a white list mechanism (either server-side, or client-side), which will accept only e-mails from the list. If an address is not on the list, then create a pair of random numbers and store them.
2. Generate a webpage (could be a subsription service for client-side software) which has an address: www.antispamserver.com/?XXXXXXXX
Where XXXXXXXX is the first of the random numbers. The page shall contain a GD generated graphic showing YYYYYYYY (the second number) and a textfield where the number can be entered.
3. Send e-mail back to the adress which wasn't on the white list saying: "You are tryning to send an e-mail to NAME, who you have never e-mailed before. Please go to: www.antispamserver.com/?XXXXXXXX and confirm that you are a real person..." (something among these lines)
4. The person visits the page, enters the code and the original e-mail is finally passed on...

There are no major loopholes in the system. The only requirement being that if you send someone e-mail, their address is automatically added to your white list. (Easy client-side, server-side solved by using the same server for POP and SMTP).

This system would not make it impossible to send spam, but would make it a whole lot more energy consuming. Let's say that the key consisted of 10 digits. The spammer would need to type in 10 characters for every one of the millions of addresses he posts to. I think that would be rather discouraging :)