Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror

Slashdot videos: Now with more Slashdot!

  • View

  • Discuss

  • Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).

×

Comment: Re:That's because engineers are not smart (Score 1) 580

by csirac (#49044931) Attached to: Low Vaccination Rates At Silicon Valley Daycare Facilities

As someone who went to a relatively unknown university (internationally at least), I can also say that the only part of my degree that I simply had to accept with blind faith ("unless you've done maths post-grad, we don't have time to teach why all this is so and how it's derived") was much of two control systems theory subjects. The rest, I could usually derive from first principles. We certainly also studied semiconductors (Si, SiC, GaN - in conjuction with a quantum mechanics subject) such that we could model transistors and other elements from physical fundamentals: exploring different quite complex models and computational approaches, down to simplified formulae, when and which to use for convenience or accuracy.

I get the point you're trying to make, but I'd say most good engineering programmes are throwing up disclaimers in the course material whenver a "recipe" (as opposed to principles) is being taught due to lack of time. Good courses should provide caveats around such things, and make the students understand that they're applying something they don't understand. And hopefully also show what branches of knowledge a "faith item" is derived from so that students can explore on their own if they wish (I hope mose EEs are being taught how to teach themselves and know the limits of their own knowledge). In order to give the physical sciences and mathematics the depth that you would apparently approve of, it would squeeze out so much of the EE domain knowledge and analytical/process/systematics part of the discipline I'm not sure you'd be left with much other than an applied science degree.

Comment: Re:OK, based upon notebook shopping thus far (Score 1) 118

I bought my 2009 X61s, a 12" thing, with 8GB RAM. That model was released in 2007. My X230, bought early 2012, has 16GB RAM. I don't know why this 12-13" form factor noadays has gone *backwards* back-to-7-years-ago specs... is it because "UltraBook" has to mean "one DIMM slot"? It's infuriating. Instead of replacing my X230 (the X240 only does 8GB RAM) when the screen broke, I bought parts to repair it. Which was probably for the best anyway (my X230 still does the job), but it's still weird I no longer have any replacement options for this apparently unicorn piece of hardware.

Why do I want 16GB? Because I really enjoy being able to reproduce all my work on this tiny little magical piece of machinery which fits in my backpack with no effort whatsoever. It's the *future*. I shouldn't have to accept mediocrity in the place of something that currently already works. I shouldn't have to stand up more resources at work and VPN in when I already have a working solution. I enjoy being able to work offline; working from flaky 3/4G isn't fun.

Comment: Re:Hakija (Score 1) 264

by csirac (#48808437) Attached to: Ask Slashdot: Linux Database GUI Application Development?

To be fair, I do actually do remote debugging in vim with vdebug, but I guess my vim is pretty blinged out. It's no VS of course. And perhaps I'm being ignorant about what it is you actually mean by multiple language support, the toolchains all do this with varying levels of success but I get that managing it can be painful (hence things like pootle).

Virtually my entire career of the last 8 years has been doing productivity software in *nix, so hearing about "THE major [foo]" seems a bit shrill. I did maintain a windows port for something at a previous company, though - Qt wasn't too bad, but again, not as painless as a greenfield app done in .NET would have been but windows wasn't the core business. It's a pity the gnome project has driven any decent devs out of the community, those windows-hating clowns have pretty much doomed Glade's future.

Comment: Re:Who supports it (Score 1) 60

by csirac (#48808357) Attached to: Exploring Some Lesser-Known Scripting Languages
As someone who worked (reluctantly, initially) as a (mostly) Perl dev for nearly 4 years, and has now been doing python for nearly 2 years - I miss lexically scoped variables and the Moose OO system. Here's a comment I made on HN which summarizes my lament regarding pythonistas being unable to fathom the very concept of missing anything from the perl world. TL;DR - Perl+Moose gave me a taste for types and a more declarative programming style which is hard and inefficient to reproduce in python (to be fair, it's inefficient in perl too unles you code mostly immutable objects).

Comment: Re:Good Bye, Joey, and it is a pity! (Score 1) 450

by csirac (#48343151) Attached to: Joey Hess Resigns From Debian
Though I never was aware of him before, I do use debhelper all the time. It's a shame it's come to this. For what it's worth, my impression is that he sees the recent GR proposal two weeks from jessie freeze as being the last straw for him in a long line of suffering from administrative/bureaucratic interference with getting real work done (don't know if he "liked" systemd, but it seems he wants the Debian project to stop wasting energy on debating it endlessly, especially given that endless debates were apparently already had last year).

Comment: Re:I will be changing to FreeBSD too (Score 1) 450

by csirac (#48343123) Attached to: Joey Hess Resigns From Debian

For me, it's keyscript in crypttab which completely stopped my systems from booting. They're not keen to ever implement becase apparently shell scripts are intrinsically racy (for what it's worth my own keyscripts have a 10s timeout and fall-back to askpass if the crpyt token doesn't become available. I've never had one of my servers reach this time-out, the hardware config rarely ever changes). I wrote about some of the infinite permutations possible to support the use-case of just having a 4-line shell script, but it just seems that systemd is religiously opposed to shell scripts. Eventually, someone pointed out that I could pass keyscript args in the kernel boot parameters which seems to be a partially satisfactory solution for now.

For what it's worth, I do like the declarative nature of systemd for starting processes, socket activation etc. and I have migrated most of my stuff to systemd. It bothers me that debugging dependency issues is still so hard (ever tried "systemd-analyze dot"? the output is completely worthless as a debugging aid). Still, I am uneasy about the dogmatic anti-shellscript religion, I worry about the project's overall approach to security when simply accidentally running systemctl as a non-root user causes it to segfault, and it doesn't seem right that a change in pid1 should even remotely impact userland applications at all, let alone as deeply as systemd has.

At the end of the day, choice of default init system isn't going to make me switch from my favourite distro of the last 14 years (apart from a 2 year excursion to Ubuntu), but I think some of my own hostility toward systemd has been a result of the instantly dismissive remarks whenever I've tried to explain a problem I've had with it - by now I'm realizing that perhaps everybody is just too tired to tell the difference between a valid systemd complaint and yet another "get off my lawn" argument. In any case it's made me realize I should really diversify my tastes a little, currently playing with FreeBSD (again) and NixOS - that has to be a good thing.

Comment: Re: USB Device Recommendation (Score 1) 121

by csirac (#48200711) Attached to: Google Adds USB Security Keys To 2-Factor Authentication Options
I actually can't tell if you're being sarcastic... but you've just described U2F. Whilst YubiKeys and other vendors do challenge/response, I think FIDO usage is typically one-time-pad mode. All other items are addressed (you can set a PIN to protect config and firmware updates, or finalize so it can't be changed ever again).

Comment: which is why I should learn mercurial (Score 1) 245

by csirac (#48191565) Attached to: Help ESR Stamp Out CVS and SVN In Our Lifetime
I eventually got submodules to work properly for me, and have been using them effectively (I think) for a few years now. But it's not easy teaching other devs. Which is why I need to spend some time investigating hg properly. Although you can do sparse checkouts with git, apparently hg has some plugins which allow you to partially clone a repo without necessarily cloning all of the objects in its history (supposedly plugins can fetch that on demand, rather than in the initial clone). It seems this is possible because git is designed around a data format, whereas hg is designed around an API. It all seems great but I just can't find the time to invest in hg

Comment: Re:Gentoo (Score 1) 303

by csirac (#48100433) Attached to: What's Been the Best Linux Distro of 2014?

I think he means that it's trivial in Gentoo to run arbitrary versions of any old library or dependency for the sake of a given application that is stuck in the past, not just package-pinning as we do in Debian-land. For example, I have an old gnuradio application that was written for gnuradio 3.6.x, but this was never shipped in any official release of Debian (it went gnuradio 3.5 in wheezy -> gnuradio 3.7 in jessie).

In gentoo it's trivial to have a specific old version of libfoo (and all the old, terribly specific versions of its huge pile of dependencies) installed along-side whatever passes for the current version of libfoo for the rest of your applications which aren't stuck in the past.

In Debian I had to re-build gnuradio from the 3.6 source, with much tweaking of the debian/control, debian/rules files and wading through debian-specific patchsets intended for gnuradio 3.5 or gnuradio 3.7, that don't apply to gnuradio 3.6. And all its dependencies. And suffer the fact that now all of the rest of my applications are forced to use gnuradio 3.6.

Comment: Re:Why do people care so much? (Score 1) 774

by csirac (#48099965) Attached to: Systemd Adding Its Own Console To Linux Systems

Other than being forced to type in 12 passphrases manually to decrypt each hard disk at every single goddamn boot, because custom keyscripts just "aren't the systemd way". Or spending hours figuring out why your Requires=network.target units inexplicably never start on boot, without a single shred of clue or evidence or event in any logs whatsoever, despite LogLevel=Debug and even though network.target clearly flashes by during boot and systemd-analyze clearly shows that it knows about this relationship with your unit and the service starts normally when you login and systemctl start manually. Or that tweaking your daemon args now requires a systemd daemon-reload as well as restart.

Yes, apart from all that, and the time saved now that admins will never have to see another freaky, alien shell script ever again because init systems were the only thing which used them, apart from all that... I'm hoping like hell systemd will hopefully one day buy me something other than more downtime.

Comment: Re: Unfamiliar (Score 2) 370

by csirac (#47881169) Attached to: The State of ZFS On Linux
For the same reasons your package manager bothers with shasums on the software you install even though the several network layers reaponsible for delivering it already faithfully checksummed each little packet as it flew past: the filesystem is the earliest and only point which knows exactly what files are supposed to actually look like in their entirety. That ZFS/BTRFS scrubs turn up errors on large pools with otherwise perfectly fine hardware means those block/packet level validations are at too low a level to make assurances for the higher level data structures using them.

Comment: Re:No one cares enough to build a competitor. (Score 1) 47

by csirac (#47844451) Attached to: Should Docker Move To a Non-Profit Foundation?

Docker's transparent caching of RUN/ADD/etc Dockerfile steps has nothing to do with reusable containers. That "it takes less than a second [to] create a handful of [new] containers" is just as true for docker as it is for plain old LXC.

There are two sentences here but I'm not sure how they relate to each other, or the docker feature I'm discussing.

Comment: Re:No one cares enough to build a competitor. (Score 3, Interesting) 47

by csirac (#47843677) Attached to: Should Docker Move To a Non-Profit Foundation?

Before docker, as a (not necessarily web) developer I used vagrant to create reproducible environments and build artefacts from a very small set of files. The goal being: I should be able to git clone a very tiny repo tracking a few KiB of scripts and declartiive stuff/config, which - when run - pulls down dependencies, reproduces a build toolchain/environment, performs the build, and delivers substantially identical artefacts regardless of which machine I run it from. I should be able look at an artefact in 2-3 years time, look it up in our version history and reproduce it easily.

Achieving this isn't so easy. Even if I had been using LXC all along I still wouldn't have had the main thing from Dockerfiles that I enjoy: cached build steps. I've been cornered due to time pressures in the past where I can't afford to tweak everything nicely so I've had to release build artefacts from a process which isn't captured in the automation (i.e. I manually babysat the build to meet a requirement on time). This is because hour-long builds make for maybe 3-4 iterations per day, so you have one thread of work where you're hacking interactively while you wait to see if the automation was able to deliver the result you were up to an hour or two ago. I still have this to an extent with Docker (adjust build step and re-run, or step in interactively to explore what's needed) but because Dockerfile steps are cached these iterations are massively accelerated and there's only a handful of occasions where I had to bypass this process now.

I can't speak for using Docker to actually containerize running applications (that's not how I use it), but just this narrow usage of Docker has helped my productivity enormously.

Comment: Re:My opinion on the matter. (Score 1) 826

by csirac (#47753003) Attached to: Choose Your Side On the Linux Divide

There is *still* no alternative to keyscript in crypttab. Upgrading to systemd trashes a system that relies on smartcards or other hardware to obtain key material for mounting encrypted disks. I wouldn't be this upset, normally - you can imagine that this is just a normal teething problem - except I read through this thread where Lennart seems to doubt the very validity of the entire use-case... I had briefly contemplated seeing if I could contribute to this bug, but the insistence that we should all write C programs (unless you want your initrd to carry python or perl interpreters and all that baggage), for every possible permutation of every key delivery system devisable by admin-kind, made me give up and revert to sysvinit instead.

Nothing is more admirable than the fortitude with which millionaires tolerate the disadvantages of their wealth. -- Nero Wolfe

Working...