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


Forgot your password?

Comment Re:The problem with GNOME (Score 1) 616

I think we're on the same page.

No way am I going back to C programming. Enough years tearing my hair out over my own malloc/free problems to want to deal with other peoples .-)

The bindings I'd written allowed me to instantiate the rhythmbox DB and query it, create a wrapping shell for the rhythmbox main components (gui and other) - and all in far, far less lines of code than the equivalent C.

The rhythmbox developer told me "I find vala annoying".

I mean, GObject in C isn't annoying?

Comment Re:The problem with GNOME (Score 2) 616

Funny you should mention that, as the GNOME foundation actually has a (modernish) langauge that can used to write GNOME programs:


It compiles to C with all the appropriate boilerplate for Gnome's libraries and introspection files to allow calling from python / java etc.

Shame very few of the core gnome devs want to use it though. I wrote some bindings for rhythmbox in it that would have allowed the devs to write parts of rhythmbox in Vala - but they are too invested in C and only wanted to use it for a plugin API.

I have the impression that the devs just like the "exclusive club" attitude that C programming brings. Don't know if that's true.

Comment Re:Assuming it mattered (Score 1) 496

It's true the frame rate increases are marginal over typical refresh rates.

However, if you can render frames quicker, the CPU that would have been used for rendering (blocking on API calls / waiting for things to happen) can now be allocated to something else (AI / sound / loading).

Now it's possible you don't gain all of that since GPU offloading takes place, but any extra free CPU has to be good, right?

Comment Re:Oracle not worth it (Score -1, Flamebait) 170

Unfortunately that's just how things go.

I've watched the slashdot audience change from dirty geeks looking for musical visualisation of sorting algorithms into "social media" pro piracy anarchists (yes, I know you call yourselves libertarian).

It used be that intelligent discussion was rewarded. Hell, even the trolls were better.

There's still the occasional nugget of old slashdot, but as another poster pointed out, we're not the demographic anymore.


TLDR: I miss my pages being WIDE

Comment Re:Music (Score 1) 261

Their problem was designing their architecture before they had put real constraints on performance (latency).

I can only assume that the designers weren't audio programmers, because the architecture is a mess. (So many layers of mixing, buffering)

Then on top of this messy architecture, you have the problem that none of your user applications run with a high enough priority to get CPU when they need so you get gaps in the playback for shorter latencies.

I mean, pulse audio beats it hands down..... On it's own platform.....

For the moment, I don't see this getting fixed to the levels of satisfaction you can run soft synths and various drum machines in real time.

Someone at google needs to stand up, take ownership of it and _rewrite the audio layer_ from the ground up (maybe start with pulse), and put sound modules _inside_ the realtime sound generation thread.

Tell you what google, hire me, and I'll do it.

Comment Re:Who needs threads? (Score 1) 305

While I have the utmost respect for Alan this quote is unfortunate.

The "new world" is coming and it's massively multi-core. Now we can call it multi-process or call it multi-thread - we still need a consistent approach to parallel execution that guarantees consistency.

In the case of multi-process, using shared memory means we need a consistent memory model in exactly the same way as multi-threads (think two processes trying to update independantly two 8 bit values next to each other).

Comment Re:Who needs threads? (Score 5, Informative) 305

IIRC it's because without putting explicit constraints on the memory model (needed for threading), you end up with holes of varying sizes when talking to memory from threads.

It's mostly to do with CPU caching / memory barriers and having a consistent temporal view of data in and out.

If it's not in the language, you end up with each platform/compiler having their own approach to barriers / atomics which makes glueing different bits of code together with different approaches a crap shoot when it comes to consistency.

Here's a good place to start

Comment Re:Same with EU/ACTA (Score 1) 330

ACTA isn't quite dead yet, it's just "a little sick".

There's the up/down vote on it in the Parliament scheduled for the 6 July, but the recommendation from the international trade committee is "no".

Comment Re:that's a lot of scratch (Score 2) 141

This may come as a bit of a surprise, but I think you're doing it wrong.

Nowadays there are many easy to install DVD or CD images you can burn that won't involve fecal matter or ejaculate in the slightest.

I'd also suggest diversifying your acquaintances a little, maybe mixing with some normal people.

Glad to see Linux has another devotee!

Comment Re:Visual Studio and Usable? (Score 1) 415


To each his own. I know I personally am more productive using the IDE and not doing the boring repetitive refactoring by hand (renaming files, recompile, oops, missed one).

I have my eclipse C++ environment setup so that on file save of the .cpp files, eclipse simply calls "make -j 3" and I get nice coloured syntax highlighted problems I can click on to get to the file.

I get all the goodness of clear, documented build (autotools), with the benefits of modern code refactoring and syntax/error highlighting.

Debugging shows similar gains.

Doing these things by hand in emacs (which I do still do for performance critical parts needing SSE) is much more time consuming.

Work smarter, not harder .-)

Comment Re:Visual Studio and Usable? (Score 1) 415

(My main environment is Eclipse supplemented with emacs/gcc/autotools).

The thing with a pure editor / makefile / compiler environment is the lack of refactoring tools.

For example, with eclipse, I can rename a method / class or add parameters / remove them and the IDE with auto-update all classes I have opened in the workspace with the new signature / name.

Sure, it's dangerous, but isn't using sed /awk or perl to do the same thing equally dangerous (gotta write a regexp every time...).

Then there is also the gui for debugging. I can gdb session with the best of them, but remembering the various incantations to walk structures and examine memory is far more time consuming than a few clicky clicks.

These tools alone are worth it, not to mention not waiting for ctags to rebuild.

Slashdot Top Deals

Someone is unenthusiastic about your work.