HNHacker News
TopNewBestAskShowJobs

rg3

575 karma · joined December 7, 2008

Programmer, gamer. With some bugs, both at the same time.

https://rg3.name/

submissionscomments
rg3··on Chocolate Duke3D - educational, compilable port of original Duke 3D
I've only been trying to get it to build on Linux for a few minutes, but there are a few obstacles along the way.

IMHO, the author should remove Linux from the README unless he intends to really make it build on that platform, if the goal is, after all, "Portable and compiling in one click on Windows, Mac OSX and Linux". No Makefile, configure or CMakeLists.txt is provided with the source, and the unix_compat.h file is missing from the sources.

Edit: I'll probably continue with my attempt to compile it manually tomorrow...

rg3··on Megaupload down, FBI Charges Seven With Online Piracy
Not 720p, but I don't think that was really the main point. By the way, I just got the link by going to YouTube and searching for "the dark knight part 1".

http://www.youtube.com/watch?v=GuaUcGr32SM

rg3··on 2000x performance win
Minor correction: the "bug" in grep was fixed in GNU grep 2.7, not 2.6. I recall that because I wrote an article about it on my blog. See the release notes for GNU grep 2.7 here: http://savannah.gnu.org/forum/forum.php?forum_id=6521
rg3··on Fear and Loathing in Debian/Ubuntu (or: who needs /etc/motd)
Also, the original wording is not clear, IMHO.

"On Debian GNU/Linux this file is a symbolic link pointing to /var/run. The contents of this file are regenerated upon every system boot based on the contents of /etc/motd.tail."

It should probably read:

"On Debian GNU/Linux this file is usually a symbolic link pointing to /var/run. The contents of the file in /var/run are regenerated upon every system boot based on the contents of /etc/motd.tail."

To make it clear that the programs that generate the contents target the file in /var/run, and do not operate directly on /etc/motd.

rg3··on Carmack: Doom 3's engine ready for open-sourcing, awaiting 'OK' from legal
Yes, and it also helps them keep the games alive. If you have the game data (CD, DVD, Steam, whatever), you can play every id FPS game up to Doom 3 in almost any platform you want, today. And you will probably be able to do it 20 years from now. I think it's fantastic.
rg3··on The story of FCopy for the C-64
Oh, you sure can get a programmable computer for under $200. I've been wanting to get one of these for some time now: http://www.norhtec.com/products/mcjrmx/index.html

With a hard drive, you can use it as a small, efficient and silent home server.

rg3··on Estimate your English vocabulary size
I am in a similar situation and my estimated vocabulary size is 10100 words. Doh! :D
rg3··on XFS, ext and per-inode mutexes
Yes, ext4 uses inode mutexes by default like ext3. They're needed if you want to use a journal, for example. Open http://www.kernel.org/doc/Documentation/filesystems/ext4.txt and look for dioread_lock for more information.
rg3··on BankSimple: A Bank That Doesn't Suck
Just a minor addition to the parent post. What was sold to Capital One appears to be ING Direct USA. Other branches of ING Direct in other countries were not affected by this operation. See https://secure.wikimedia.org/wikipedia/en/wiki/Ing_direct#IN...

Edit: kirpekar was faster than me a few comments below.

rg3··on Password validation bug in some implementations of bcrypt
Thanks for the pointer. I have updated my small C wrapper around the Solar Designer implementation to fix the bug too. See http://github.com/rg3/bcrypt/
rg3··on The Linux desktop experience is killing Linux on the desktop
No, I actually agree with you. It's harder with laptops and notebooks. With Windows and OSX, the manufaturer does all that work for the user, while us Linux users are normally alone out there looking for compatible computers. It's not easy to get a laptop or notebook with Linux preinstalled, at least in some countries. You know, I could buy something like that from Dell, but the keyboard layout would be different and make it harder to input my native charset. Plus, many people trying Linux for the first time will try to run it in a computer they bought without Linux and compatibility could be horrible.
rg3··on The Linux desktop experience is killing Linux on the desktop
I think the postscript is quite rude. Disregarding possible criticism because he's a Linux sysadmin and has contributed to the kernel. To be fair, he's doing something wrong even if he doesn't want to admit it: choosing the wrong hardware. His most direct and important complaints come down to that.

I bought a new computer past summer and all its hardware worked properly from day zero, ethernet, wifi, 3D acceleration, suspending, hibernating and dual-monitors included. I chose the right hardware. Flash support? The 64-bit flash plugin is not crashing here. I use flashblock to avoid possible security problems, but I use it in Windows too, to avoid annoying ads with sound. The quality of OpenOffice.org or LibreOffice is good enough for desktop users, in my humble opinion.

And the rest of the post is debatable at least. Linux and its software ecosystem are not to blame for poor Skype support, for example.

rg3··on Great Computer Programming Quotes
Some nice quotes in there. Minor mistake: the end of the world quote, referencing the year 2038 problem, gets the number wrong. The date is in UTC, and it's 2^31-1 seconds, not 2^32.
rg3··on Why linux doesn't have a "wheel" group
In my Slackware system, which does not use PAM by the way, it's perfectly possible to support the "wheel" group. In fact, the group is already present in /etc/groups and you can add users to it. Later, you don't need to change the permissions of /bin/su. The check can be run from the program itself if you edit /etc/suauth and add a line like this:

root:ALL EXCEPT GROUP wheel:DENY

But I think this may be due to the "su" program not being GNU su, but the one from the shadow suite. :)

rg3··on Osama bin Laden Is Dead
A compatriot is someone from his own country. Maybe the OP didn't mean to use the word with that meaning. Osaba bin Laden was born in Saudi Arabia. Suggesting there's nothing in favour of anyone born in Saudi Arabia is just plain wrong.
rg3··on Slackware 13.37 has been released
You can donate to the project directly if you wish by going to http://store.slackware.com/ and clicking on the donate button (top of left column).

Now, to address your point about encouraging buying the DVD or not, I think you should view that from the marketing point of view. He offers software. There are no licenses involved, and you can download the DVD from many high quality mirrors. Still, he needs money to continue the project. Apart from praising the product, how does he market it and get people to pay for it? I think it's much better and professional to offer a pressed DVD in a jewel case, in exchange for money, than asking for donations or something similar. Even if it's less green.

Disclaimer: after years using Slackware, I got a subscription to the DVD when I got my first full-time job. I also think it's nice to receive the DVD from time to time, and I've used the DVD as a rescue and installation disk occasionally. You don't know when it can be handy to have it.

rg3··on The Linux Security Circus: On GUI isolation
Replying to myself. I just read the architecture document for Wayland, which can be found at:

http://wayland.freedesktop.org/architecture.html

The document explains that the Wayland compositor, when receiving an input event coming from the kernel input drivers, decides which window has to receive the event and sends it to the application.

If it really works that way, native Wayland clients could be isolated from other clients and they would not receive input events directed to another client. But, in practice, the Wayland server could have facilities for clients to register and receive all the events, so I'm not sure how all of this would turn out.

rg3··on The Linux Security Circus: On GUI isolation
Does anybody know by any chance how does the Wayland server work in this regard?
rg3··on The Linux Security Circus: On GUI isolation
Thanks for pointing out the "Secure Keyboard" option. Make sure to test it before relying on it, though. I just tested in my system and it does not prevent "xinput test" from receiving the key presses, even when typing the "su" password.
rg3··on Chromium Notes: Ninja, a new build system
I don't think you can take the merit away from the build system author so easily. As the article states and the manual mentions, a clever build system based on make, without using recursive Makefiles, took 10 seconds to start compiling after modifying a file, and the new build system takes less than one second, on the same Linux system. No doubt the OS has many things to say regarding process start time, filesystem access, etc. But the big differences come from the build system, entirely in the userspace side.
rg3··on I always forget the argument order of the `ln -s` command
My theory is that we're used to see symlinks as part of the "ls -l" output, which lists the link name first, and then the target. Later, we want to create symlinks as we're used to see them (linkname -> target).
rg3··on Rob Pike: Notes on Programming in C
Your point about the need of certain data structures reminds me of the famous humorous text "Real programmers don't use Pascal", which said:

"As all Real Programmers know, the only useful data structure is the Array. Strings, Lists, Structures, Sets-- these are all special cases of arrays and can be treated that way just as easily without messing up your programming language with all sorts of complications."

The full text is available here and is a recommended read if you have some spare minutes: http://www.pbm.com/~lindahl/real.programmers.html

rg3··on Poll: What programming language do you use for your app/startup?
I spend a lot of time programming in Ada 83 in my day job. The software has to do with air traffic control. I also voted C, C++, Perl and Python. In my personal projects Python is the dominating language, but I also write a lot of shell scripts in both my personal projects and day job.
rg3··on Glibc vulnerability allows any user to get root access
That's because, to redirect that file to file descriptor 3 for reading, you need read permission on the file. In my system, for example, /bin/ping cannot be read as a normal user (permissions 4711) and I get that same error.

You'll have to find another binary that has the SUID bit set and is readable. For example, in my system /bin/mount does the job. Still, in the last step I get the same error as reported by several other users (Inconsistency detected...)

rg3··on The Next Web uses cheap JavaScript hack to fool you into installing an extension
I think this issue signals a problem with the UI in Chrome or Firefox, or any browser that creates this kind of popup. The problem is that, by placing the popup above the webpage contents, the webpage creators can mimic that native UI and create the same effect with the page contents themselves, and you don't know if the popup was created by the browser itself or if it's part of the webpage.

I think the problem could be solved by modifying the UI in the browser in such a way that you don't allow the webpage to create a similar popup because there would be a visual barrier that clearly indicates when the popup is part of the browser itself and when it's not.

rg3··on 4.2.2.2: The story behind a DNS legend
While not terribly slow, I changed from my ISP's DNS servers to the Google ones because they occasionally don't work. When they work they are pretty fast. However, from time to time they were unresponsive. Sometimes that didn't happen for days, and sometimes they were unresponsive for 30-second bursts several times an hour, and then you couldn't browse the web or check your email.

I changed to 8.8.8.8 and waited to see if that was the problem. Since I changed the problem hasn't reappeared, so I keep using 8.8.8.8. I'm no friend of giving Google all my data, but the privacy policy on their DNS servers is quite clear. They don't use the data to correlate it with anything and only cache it for some times for technical reasons, whiping it afterwards. It's fair and doesn't redirect you for failed queries.

rg3··on [dead]
I will not give my opinion on the article being right or wrong. However, the CLI and maybe the current GUI will survive, even if they become a minority. The joy of computers today is that people suddently have access to an amazing, powerful and versatile tool, which is the programmable computer.

Our computers are not designed to do one thing, they are designed to be flexible and allow lots of things to be done. That's why you can read a DVD, transcode its contents, take screen captures and send them by email or serve the whole movie, maybe even edited, to the whole world using a peer to peer application. Obviously this flexibility is not seen as a good thing by some industries, but that's a different matter.

Now, to interact and program this flexible machine you can do two things, or a mix of them: on the one hand, you can give the user a powerful language to express their ideas and make the computer ask only a single question ("Huh?"), and that would be a CLI and its prompt; or you can give the user a simple language of pointing and "Huh!" and make the computer ask the right questions to them in the hope you offer them enough options.

The first way is usually more powerful and flexible, easier to implement but harder to use, and the second option is way easier to use but much more difficult to implement, and there are a lot of books with dissertations about how to ask the right questions and how to choose which questions to ask, because you cannot give every option.

Probably, the majority of people using computers in the world today only need to be asked simple and very direct questions and a simple computer that doesn't really get in the way and uses a different metaphore could be the solution, but I challenge that the number of computer experts and power users is in the millions anyway and they need a CLI or a slightly more complex GUI to express what they want to do, so I don't think those interfaces are going to die, even if they do "lose the battle", if we such a battle exists. As a programmer and power user, I turn to the CLI many times a day simply because the GUI isn't asking the right questions, and I hope it remains an option in future computers.

rg3··on Bash Vi Command Line Editing Mode
Something similar happened to me. I'm a happy Vim user and have been for years, but I've always used bash in emacs mode.

However, some months ago I started to work in an environment full of Solaris 8 machines with ksh as their default shell in vi mode for some reason. It's configured that way for every machine and we have to constantly log in and out of them to do our jobs, and it's always been that way so I simply didn't ask for it to change. After all I was also the new guy.

After a few weeks I got so tired of trying to use emacs commands in vi mode shells while at work, and vi commands while in emacs mode at home that I changed to vi mode at home. And I've been happy since then. It's not that hard. You get used to it quickly, especially if you use vi or Vim a lot like I do.

rg3··on Ask HN: Mercurial or git?
I'm the author of the second one. I don't pick a side because I use both for different personal projects and haven't made my mind up yet. It's an honest conclusion and the article is oriented to giving an introduction to someone who's trying to make a choice. That's the point.
rg3··on The Sun Has Set. Maybe it will rise again
In addition to being a bit sad, I'm having a technical problem with the website. It redirects me to oracle.mobi, which I guess is the mobile version of the site. Not good for the company image, I guess.

Note: my user agent is "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 Slackware Linux".

← PreviousPage 2 of 3Next →