Here’s this: http://gizmodo.com/5594790/we-may-actually-live-inside-a-black-hole-vincent

And here’s my take on it: The article above says that our entire universe may actually be the inside of a black hole. Meaning that there is (are ?) another outer universe which contains the black hole which in turn contains us. This would also mean that black holes in our universe contain other sub-universes that are one level down from us but basically they are truly parallel. And if our outer universe has other black holes they contain other parallel universes to our own. AFAIK this goes as far we care to go, seemingly reaching infinity. Freaky huh?

Looking at only our own universe, let’s see what we know about black holes. They are (khm…) black, which is to say they are invisible. Why are they invisible? Because they are the concentrations of huge amounts of mass in a relatively tiny area of space which results in near-infinite gravity to the point of no return (PNR). Therefore if you cross the PNR then you (or light) can never again escape the black hole. Excuse me for omitting certain details that today’s most brilliant physicists have come up with, but really I’m not one of them, or a physicist at all. Let’s just move on to something else.

We live inside our universe. Fact. Scientists believe that even if we had infinite amounts of energy and we would live forever, we could never leave our universe. We could keep going and going in one direction forever, but would never actually leave the universe. Sound familiar? Yep, black holes. This – to me – sounds like we could be inside the PNR of a black hole without knowing anything about it.

The whole idea might not be bullet proof, but somehow it just makes sense. Until I begin to wonder where the line of parent/child universes begin or where it ends.

update: I highly recommend reading the comments on the above article, specifically vlatro’s rather long comment.


Stuff

26Apr10

Been a while, eh?

Well, yeah, end of the fall semester was the last time I wrote something here. That doesn’t mean that I’ve done nothing in the meantime, but been really busy at work and not so busy in university.

On another note, I’m really looking forward to this summer. It’s going to be a hell lot different from the past ones for I’ll be working as a full time intern at MS. Which is cool, I’m happy. It’ll also be great because for two straight months I won’t have to care about school and therefore in the evenings I’ll be free to do whatever I want to do. There really are a few things I have on my to-do list, e.g. learn Java and/or Perl, learn a lot more about infrastructure, build my calendar-slash-todolist app, maybe do a bit of operating system development, and such things.

I’d also really – and I mean really – like to spend some time experimenting with JavaScript, HTML5 and CSS3, to see how far one can push it. I don’t have a clear idea so far as to what I want to do, but I know it’ll be big. I’m thinking good graphics, fast responses and all-around awesomeness and last but not least some seriously wicked code. (Btw, this last one is getting quite a daily practice as I learn more and more at work. You guys wouldn’t believe the kind of code I’m sometimes writing and the hacks that do things no one intended them to…)

So that’s about it. Web development 24/7 with a bit of school every now and then. Oooohhh yeah, I almost forgot to mention…🙂 The best part of this semester is Erlang and Prolog. I mean DAMN can those things simplify matters. Also they are a very different breed of languages than C# or Java, therefore it takes almost a day for me to get used to them. But still, I’m like a little boy with his ice-cream at those times. “I’m lovin’ it!” (McDonalds’)

End of story.


Just a quick note. After a mere two-and-a-half years, I completed the Probability Theory course.

There must be some people around who think that I should feel ashamed that it took so long, but really, I’m plain happy right now and I don’t care. I did it, I’ve got the credits for it, and that’s all.

I think I deserve a beer…🙂


As with the width in the previous post, I found myself in need of changing the line height of a page for more comfortable reading. Again, it resulted in a bookmarklet, as so:

javascript:(function(){var a=prompt("Please enter the desired line height!");if(!isNaN(parseInt(a))){var e=document.getElementsByTagName("P");for(var i in e){e[i].style.lineHeight=a+"%";}}})();

Usage: Copy the code above, create a new empty bookmark, and paste this code as location.

Note: it currently supports only <P> tags because I’m reading Wikipedia right now and I needed it for that. Suggestions to expand the list of tags are welcome.


For a little while now, I’ve been using my laptop with a 21.5 inch widescreen LCD at home. It’s a great expreience and all, but I’ve run into a few understandable, but annoying problems.

Most pages on the web are not designed by true webdesigners, and definitely not designed for today’s screens with increasing resolutions and thus width. Put it simply, an article is not comfortable to read when it spans the whole width of 1920 pixels. To overcome this annoying problem, I’ve created two simple bookmarklets to change the width of a page.

Well here they are, click and drag copy and create a new bookmark:

Centered 600

javascript:(function(){document.body.style.width = "600px";document.body.style.margin = "0px auto";})();

Centered UDef

javascript:(function(){var a=prompt("Please enter the desired width!",'');if(!isNaN(parseInt(a))){document.body.style.width=a+"px";document.body.style.margin="0px auto";}})();

The difference between the two is that when Centered 600 shrinks (or increases) the body width to 600px, while Centered UDef prompts the user for the desired width.

Last, I have to mention that the idea came from Arc90‘s Readability bookmarklet. It’s a great piece of code, that takes the relevant information from a webpage and removes any kind of clutter from around it, making it easy to read. However, sometimes I’d opt for keeping the clutter and thus these two bookmarklets came to be.

update: Thanks goes to 123 for noting that the links didn’t work. It’s fixed now. All you have to do is copy the code above and manually create a new bookmark.


At the end of last week I’ve decided to install Windows 7 on my laptop. That I did, and while I was at it I also formatted my hard drive hoping that it’ll clear up the mess that it was before. All this is nice and good, but know I’m facing a few questions regarding the software to-be-installed.

For a start I’ve always had this idea of keeping separate virtual drives for development purposes. For example I’d have one for .NET development, one for PHP/Java/whatever, and another one for OSDev. Problem with this approach is that I don’t really have enough free space on my hard drive to have – say – three Windows 7 virtual installs next to the running system. Thinking of going the Linux or UNIX way for the latter two, but I’m not quite sure yet.

p.s.: I’ve a separate USB keyboard finally, which is cool. Not to mention the English keyboard layout…🙂


A few minutes ago, I’ve sent a coded update to my Twitter timeline. The message was the following:

Cygwin/NASM->ELF OK. Cygwin/Gcc-RAW OK. Cygwin/LD->PE BAZDMEG!!! Reggel fordíthatok egy cross-compilert :S

To those who are not familiar with what I’m trying to do, and the terminology of it, well, here it goes.

As I mentioned in previous posts here, I’m trying to get into operating system development. My chosen platform would be Mac OS X, but until Mercurysquad finishes the Wi-Fi driver, I’ll stick with Windows. Unfortunately most of the tools best suited for OSDev are for Linux.

That’s where Cygwin comes in. Cygwin is a POSIX library for Windows, that allows running some *nix programs on Windows. I get the almost original GCC, Make, Ld, and so on.

NASM stands for Netwide Assembler, no need to say more on this.

The problem outlined in the above tweet is that I need an ELF-type binary file (Linux executable) as my kernel. NASM creates one for me. GCC creates a nice raw object file for me. And when I try to link them together, the Ld that comes with Cygwin takes the whole thing and turns it into a PE (Windows) executable. I almost cried when I saw the hex dump.

Well, anyhow, I’ll just have to compile a correct version of Ld for myself, tomorrow morning.


Status Report

27Aug09

As the summer is coming to an end, it is only logical to give a quick overview at what heppened to me over the summer.

First of all, I’ve spent most of my time in summer camp, which we call Indiántábor. I’ve spent 5 weeks there. It had both it’s good and bad days, but overall I think this was my best season of camp ever. We’ll have to see later.

On OS development, I hven’t made much progress. As I mentioned in my previous post, I had to figure out how to load another sector from disk and execute it. All this in 16 bit real mode. I finally managed to get it work, the error was the inclusion of a line of code which was not supposed to be there. I also managed to make the switch to 32-bit protected mode and back. At that point I’ve decided that it’s time for me to start using C/C++ as well, beside Assembly. The next day I left for summer camp, and no progress has been made ever since. All this will be clarified in a future post.

Also related to OS development is the fact, that so far I’ve been using Windows. As many osdevers know it’s far not the best choice. I’ve tried Linux a few years back, but it didn’t really met my requirements, so I decided to go with a different operating system, Mac OS X. Right now I’m only doing expreiments with the OS so that I can gather enough knowledge of it to be able to make a seamless and errorless switch in the next few months.

Since I was the one who created the Indiantabor.hu website, people from the camp have been telling me for years to create a gallery for it as well. Since the site is written in PHP, for the past few weeks I’ve been thinking about it a lot, because it’s been a while since I’ve last programmed in PHP. Nevertheless, I’ve made my decision, back to PHP, therefore a new version of the aforementioned site with a gallery is on the way.

Last but not least I’m in the middle of an application to a Morgan-Stanley internship. I’ve already passed the telephone interview, and the technical and interpersonal interviews have taken place as well. No result from them so far.

That’s about it, school begins on the 7th of September. Good day to everyone.


Assembly Demo

29Jun09

At the moment, I’m at the beginning of gathering the required programming and technical knowledge to start writing my own OS. I’ve been messing around with assembly, and now I have a very-very-and I mean VERY simple screenshot to show you:

What do we see here?

  • The video mode has been switched to VGA.
  • We’ve printed the string on the screen.
  • We’ve drawn a straight line.

Not much, I know. Pretty simple code too. But note, that no DOS functions were used, all this runs from the boot sector of a 3.5 floppy.

Next step is to read sector no. 1 from the floppy into the memory…


 

For some time now, I have been having trouble with deleting folders that contain a lot and – I mean a _lot_ – of files. Such folders are very hard to remove either with Windows Explorer or Total Commander.
The reason for that is unknown to me. I guessing it has something to do with reading the file attributes – which is completely unnecessary. For a while now I have been searching for a solution and I believe to have found it.
Note: I do not claim anything, just saying that I completely forgot about this possibility.
So here it goes. Very simple. Open up the command prompt, navigate to the folder of interest (or it’s parent folder) and type the command:
rmdir “<foldername>” /S
Change <foldername> to the name of the folder you would like to delete. The S switch ensures that all files and subfolders will be deleted as well.
After hitting <Enter> you’ll be prompted to approve the delete, and the deletion occurs.
While using Total Commander, the deletion of a fairly large folder (read: ~350MB, ~20k files) would take somewhere up to an hour, with the command above it’s less than ten seconds. Sweet, eh? Cheers!

For some time now, I have been having trouble with deleting folders that contain a lot and – I mean a lot – of files. Such folders are very hard to remove either with Windows Explorer or Total Commander.

The reason for that is unknown to me. I’m guessing it has something to do with reading the file attributes – which is completely unnecessary. For a while now I have been searching for a solution and I believe to have found it.

So here it goes. Very simple. Open up the command prompt, navigate to the folder of interest (or it’s parent folder) and type the command:

rmdir "<foldername>" /S

Change <foldername> to the name of the folder you would like to delete. The S switch ensures that all files and subfolders will be deleted as well.

After hitting <Enter> you’ll be prompted to approve the delete, and the deletion occurs.

While using Total Commander, the deletion of a fairly large folder (read: ~350MB, ~20k files) would take somewhere up to an hour, with the command above it’s less than ten seconds. Sweet, eh? Cheers!




Follow

Get every new post delivered to your Inbox.