Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?

Comment Carlsen won in 11 sec. It's lightning chess. (Score 1) 449

Not sure if the video plays outside of Norway:

It's about at 54 min. in.

- Carlsen was given 30 sec to win.
- Gates humbly said he had a 1600 rating vs someone with 2000 etc.
- Gates was actually a sponsor of Carlsen at the start.
- Carlsen said he violated one of his principles by using a cheap trick to win.

Comment Re:All I know about 1973 .. (Score 1) 214

Only the compiler/bridge needs to know about the physical resources you work with. The user only needs a model of the hardware to work with. The compiler/bridge should then be able to produce the optimal code with no language overhead. Unfortunately, the way software is done today is still very ad hoc. There is little or no state modelling so you could map out or simulate what happens with the resources. We'd need model representations for all the hardware.

Comment Re:All I know about 1973 .. (Score 1) 214

You're ignoring the reason C went the way it does: performance. 'int' can translate to whatever is fastest, not whatever the spec demands (like in Java, say). It's a tradeoff, and as C is a language which puts speed over just about anything else, I can't fault their decision there.

C actually makes it a lot harder to produce the best, optimized code, because the language constructs are too closely tied to the machine domain. An optimizing compiler has less leeway in how it can re-arrange and streamline the logic to reach the goal.

Comment Re:All I know about 1973 .. (Score 5, Informative) 214

The thing to get here is that there are basically two kinds of OOP, so to speak.

Here's a short discussion that covers it:

In Alan Kay land objects are sub-computers that receive messages from other sub-computers. In Barbara Liskov world objects are abstract data with operators and a hidden representation.

Kay OOP is closely related to the actor model by Carl Hewitt and others.

Liskov had her own idea of OOP, and she was not aware of Smalltalk (Kay, Ingalls) at the time. She started work on her own language, CLU, at the same time as Smalltalk was developed.

Comment All I know about 1973 .. (Score 4, Interesting) 214

.. is that C was seen as a major setback by Frances E. Allen and others.

It [C] was a huge setback for--in my opinion--languages and compilers, and the ability to deliver performance, easily, to the user.

Frances E. Allen
ACM 2006 Conference

The context here surrounds abstractions and not allowing users (programmers) to play with pointers directly (C, and later, C++), which is a setback concerning optimization, because of the assumptions/connections you make about/with the underlying machine.

If you want to learn more about the ideas of the 1960s and 1970s, I highly recommend looking up talks by Alan C. Kay ("machine OOP" which is Smalltalk in a nutshell), Carl Hewitt (actor model), Dan Ingalls, Frances E. Allen (programming language abstractions and optimization), Barbara Liskov ("data OOP" which is C++ in a nutshell), and don't stop there.

Comment Re:Obligatory XKCD (Score 1) 479

I love blindly copying memes..

In this case, however, things actually did get worse on many points. Look up talks by Alan C. Kay, and Frances E. Allen at the ACM to get you started. For example, C, which UNIX and Linux is based on, is a giant step back regarding concurrency and code generation, already realized the day the language was released in 1973.

Comment Re:Use the software yourself (Score 1) 205

I know what you mean, and this is only about context.

What you may want to try is to use context tests.

Example: You start the program, then go; I want to do this (think of some action); then you do that action. The key point being not to be allowed to think too much about what you do. It's not an "academic approach," but it's quite efficient, especially in games. However, the psychological factor is to avoid things that hurt the ego; this is especially true when developers are not able to distance themselves from their work; it's just a tool.

Comment Re:Use the software yourself (Score 1) 205

Programmers have to know the domain for which they are developing.
You have to make using the software part of your time, just as code review shuffles through roles.

For your example, if your software has so many unknown states when shipped, it's fair to say it's based on luck if it works right.

You would actually need an environment where you could map out states, and simulate input devices.
Software development is still young, and I don't think we know how to do it right yet.

Comment Maybe it's too expensive to get their own place? (Score 1) 770

In most countries you have to work 5-15 years, full time, to save up enough capital to get a house loan from any bank. You can rent, of course, but that's a waste of money, and you most often have to keep moving. Usually when contracts expire, the price goes up.

Just out of school? Good luck getting any job! Student loan? Even better luck having to pay down that loan, and your bank loan, and other costs connected with your apartment.

The system keeps a tight leash on its citizens. People who do make it on their own cling to their paychecks to make it one month at a time. What a fucked up world to live in.

Also, to counter all the stereotype comments mentioning porn, games, everything is paid for, mom does the cooking; you can still live at home and pay rent for your 10m^2 room, do your own laundry, buy or make your own food. Who would have thought?

Comment Re:Finally somebody said it! (Score 1) 204

Putting a system in/out of stand-by/hibernation is probably another risk factor with SSD drives.

Some points of failure:

SATA SSD Drive - SATA Cable - SATA Controller - Resource Manager - "Operating System" - SATA Driver

In my personal experience, the manufacturer wanted to blame the SATA controller without providing me with any proof.

In summary, SSDs are fast, but they may die fast too. SSDs are most likely not any more or less reliable than mechanical drives, except for purely demonstrational purposes, such as dropping a computer on the floor (unless that caused a drop in power to the drive from other components).

Comment Re:What, exactly, are they suing for, again? (Score 2) 304

Fingerprinting, it seems. I guess even relaying a MAC (the unique identifier attached to network interface cards) address would infringe on this patent.

It's basically what programmers did back in the day to check whether the processor was supported by their program, or to conditionally execute floating point instructions, if the platform had a floating point unit. The *only* difference here is that the same information is used to form an identifier to check whether the system platform has changed since the last time the program started, and it stores this information somewhere to run a comparison against.

It's kind of reminiscent of the public key system.

Slashdot Top Deals

Premature optimization is the root of all evil. -- D.E. Knuth