Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×

Comment Re:Infinity (Score 1) 1067

It's not a problem for floating point, where division by zero is well defined (it's a NaN value). And division by almost-zero is not a problem in floating point either, though if you're going down one of the pipelines for dealing with subnormal values then be aware that it's likely 10-100 times slower than normal floating point calculations.

Comment Re:Google is an advertising company (Score 1) 161

I'm surprised that it's taken this long. I've thought that MS and Apple should have been incorporating aggressive anti-tracking and ad blocking capabilities into IE and Safari for a few years, because neither company makes much money from ads, both could easily spin it as a user-centric decision, and it would hurt Google a lot.

Comment Re:Oh mozilla (Score 1) 351

How many times have you used Notepad/Wordpad instead of Word?

I use the Mac equivalent, TextEdit, quite often for jotting down quick notes and for quickly opening text files (including rich text and Word docs where I don't really care about the formatting). TextEdit is a very thin wrapper around the NSTextView class, and so is the same sort of not-quite-demo-app as WordPad, which is a thin wrapper around Microsoft's rich text editor control. I have Word, Pages, OpenOffice and LibreOffice installed, but I probably use TextEdit more than all of them combined, because for most simple things it just gets out of the way.

Comment Re:Fuck you Mozilla (Score 1) 351

Open source, like proprietary software, is supposed to be about what the contributors want. In the proprietary COTS model, it's easy to identify the contributors: they're the ones handing over money in exchange for the product. In the bespoke model - proprietary or open - it's usually the person paying the developers salary. In the mass-market open source model, it's much harder (and may be a mixture of volunteer devs / doc writers / bug reporters and so on, as well as some people funding the project). For Mozilla, most of the work is done by people who are paid, but their salaries come from from an income stream (money from the default search provider and so on) that makes it quite difficult to see who the contributors are. Technically, they're probably the users, since that's essentially how Moz Corp gets its money, but via a lot of layers of indirection.

Comment Re:Social mobility was killed, but not this way (Score 1) 1032

That's more or less the system in the UK. You get a loan that charges interest at the rate of inflation, plus some government funding if you qualify (lower income people only). The loans are guaranteed by the government and the interest and repayments are collected at the same time as taxes and assessed based on income (so you don't start paying them back until you're earning above a certain rate). The loans are issued by a not-for-profit company, effectively by the government though separate for accounting purposes. The government bets that having more people with degrees will increase tax revenues in the future. There is a fairly good market for rate-of-inflation investments (i.e. the other side of the loans), if they come with very low risk. Generally, if you have lots of money you want to have a reasonable chunk of it in something safe and have a smaller part in high-risk, high-return investments. Government-backed loans make a solid part of such a portfolio.

Tuition fees are also capped by the government (currently at £9K/year, which is a bit excessive. When I was a student the cap was £3K, which was a lot more reasonable. Unfortunately, the last government cut government funding at the same time that they put up the maximum requirement, effectively forcing most universities to raise their fees to £9K to keep the same per-student income. The Scottish and Welsh governments both pay the fees, so they really only apply to English students, which also causes a bit of friction).

Comment Re:It's not sharing if you are paying for it. (Score 1) 66

There was a study a couple of years ago from Harvard (and covered on Slashdot) that put the optimum price for maximising profit at 5/track. At that price, people don't think about buying music - they'll happily buy an album because they heard a bit of a song and liked it or a friend recommended the artist. The increase in sales, the study claimed, would more than offset the reduction in per-sale profit.

Comment Re: BI == Business Idiots (Score 1) 260

Nope (also [citation needed]). The go compiler is fast because it doesn't use modules/header files.

There are three compilers for Go, one based on the Plan 9 stuff, one a GCC front end, and one an LLVM front end. True, none of them use header files, but this is really something that doesn't affect C-family languages if you use precompiled headers. The Plan 9 implementation is fast because it does a tiny subset of the optimisations that GCC or LLVM would do.

The GCC and LLVM-based compilers are have similar compile-time performance to C or Objective-C. They're only faster in comparison to C++ because they don't do any compile-time specialisation (which, by the way, something like a .NET CLR or JVM will do in the JIT, but which Go never does). In C++, you pay a price in compile time for better run time[1] if you use templates or pay it at run time if you use virtual functions, in Go you pay the price at run time and have no alternative. Unless you're the person implementing the generic Map type (though the Map can't be usefully parameterised, so you often end up paying it as a user of this type too).

Go does a lot of nice things (channels, interfaces, and so on), but it is frustrating when a new language includes problems that other languages fixed decades ago. Share via communicating is a sensible pattern, but a new language for parallelism that doesn't make it trivial to enforce shared xor mutable is embarrassing. Erlang had this right from the start and Pony does it in a very nice way.

[1] Unless you end up blowing away your i-cache. It's true that a lot of C++ programmers will overuse templates and end up sacrificing compile time for no measurable run-time benefit, but at least when you actually want to retain most of the source flexibility of dynamic dispatch without the run-time overhead then you can.

Comment Re:Dumb argument (Score 4, Insightful) 260

Add to that, Go and Swift are pretty small languages. Learning either is something that a moderately competent programmer ought to be able to do in a few weeks. Neither is sufficiently different to other languages that there's a big cognitive jump. The difficult thing is always learning new libraries and frameworks, not learning a new language (well, unless the new language is C++, where after a decade of daily use developers are still not surprised to come across a language feature that they've never seen before).

Slashdot Top Deals

So... did you ever wonder, do garbagemen take showers before they go to work?

Working...