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

 



Forgot your password?
typodupeerror
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×

Comment I suggested training on sims to Alain a decade ago (Score 1) 56

I worked with Alain Kornhauser about thirty years ago, first taking his robotics course as an undergraduate, later managing his robotics lab as an employee, and then again even later (briefly) as a grad student tangentially as part of a group doing self-driving car research focused mainly on a neural networks approach. I had also been hanging around Red Whittaker's group making the first ALVAN (Autonomous Land Vehicle) around 1986 before going back to Princeton to work as an employee.

While I did not contribute much of significance to that self-driving car group (I had other interests), I had suggested we train cars to just drive one specific route based on videos from driving that route a variety of times. I guessed that most daily commutes are just along the same route and so that could be a big win. But he dismissed that idea for some reason I'm still not sure I understand. Still think it made a lot of sense though for the resources we had at the time.

About ten years ago I suggested he get his PAVE students to write software to drive Gran Turismo as a challenge. Not much response from him on that then though. Glad to see his is finally doing that -- although with much better game/simulation software now.

I also suggested he could make PAVE the free and open source software hub for self-driving vehicle software to address some concerns I outlined back in 2001 in the essay to the Markle Foundation:
http://pdfernhout.net/on-fundi...

From the email I sent Alain in 2007-02-02:

"Glad to read of your group's successes with the Grand Challenge. I've long thought a fun project for your students would be to write software that takes visual input from a a PlayStation 2 driving game like "Gran Turismo"
      http://en.wikipedia.org/wiki/G...
      http://www.gran-turismo.com/
(direct via video out to video capture, or even through a camera focused on a TV) and processes that image to drive the simulation via a USB hookup into the PlayStation. Not quite the real thing (and Red Whittaker might rightfully scoff at that approach as ignoring much of the challenge of making real hardware survive in a tough environment :-) , but it is cheap, easy, and safe to do in an undergraduate lab with limited supervision. And the racing game simulators just keep getting more and more realistic. And if that challenge becomes too easy, you can then add noise to the video signal to make it harder... Or introduce lags or noise in the USB steering. And then start working on controlling ATV Off Road Fury or the the Snowmobile racing games, and so on. Or have kids write software to control one game and then give them only one day to make it work for another... Probably lots of good science and engineering and education to do there on a (relatively) small budget."

I mentioned that idea again to him in 2011-06-18 when I was looking for jobs:

"Or maybe you need someone to do more work on cars that drive themselves, which sounds like more fun? :-) Except that PAVE stuff is all student run, and good for that approach, so I can see you probably won't need someone for that. I still feel getting students interested in writing open source software to process images from the latest driving simulator games is a good (safe) project that might advance the state-of-the-art in automotive intelligence in a very positive way. :-) I'm sure it would at lead to lots of funny press though ("Students at Princeton are seriously playing with video games", and so on). Whether that is good or bad depends on your point of view, perhaps."

Anyway, glad to see that idea finally getting some traction. :-)

While he did not take some of my ideas that seriously, I did not take his idea of the self-driving car stuff that seriously myself back then. Not that I objected to it -- I just did not see the urgency for it and was more interested in robot manipulation (being a fan of the "Silent Running" drones).

But Alain saw the value in self-driving cars decades before most other people. He explained how they could save lives by being safer -- as well as reduce expenses and reduce pollution by being more efficient.

Alain is a brilliant guy and a nice person too (they don't always go together) -- wish I had made more of my time working with him. Looking back on it, I think, wow, what if I had just been excited to do a project to make a self-driving golf-card for the Princeton campus for alumni or for the annual P-rade? That would have been a great place to start and I'm sure we could have been successful enough on a limited scale with a limited budget to move onto grander things.

Back in my early 20s I just did not appreciate what a great opportunity working with him was. Working with him as an employee for a year in his robotics lab was where I learned so much about 3D graphics which made it possible to write a garden simulator and also PlantStudio software (for breeding 3D botanical plants). Best job working for someone else I ever had. Thanks Alain!

Comment Re:Do you code? (Score 1, Interesting) 384

Also you have interface complexity. Adding these features requires some way to use the features, possibly including configuration options, menu items, hotkeys and so on. Prior to the Ribbon, Microsoft tried to fix this in Word by hiding all the menu items you had not used yet, so you'd never know those features were there to be used. My boss constantly asks me to remove menu items and "simplify" but he never has any answers on where he thinks users should go to access those features if they're no longer in the menu. Relevant Dilbert.

Comment Peopleware book on team spirit & also "e(vil)m (Score 2) 148

"Peopleware: Productive Projects and Teams" explains how supporting true team spirit is a key aspect of a high-performance organization. You can find some good evidence in there for your point.

The authors also explain better ways to manage email. Here are subheadings from the book chapter:

Chapter 33: E(vil) Mail 199
In Days of Yore 199
Corporate Spam 200
What Does "FYI" Even Mean? 200
Is This an Open Organization or a Commune? 201
Repeal Passive Consent 201
Building a Spam-less Self-Coordinating Organization 202

In general, their focus on good use of email is on helping people in organizations self-coordinate. It is more a vision of the manager as supporting good communications within and between teams versus than a manager being a hub of communications. So, to them, lots of CCs on emails suggest the possibility of some sort of organizational dysfunction which could be corrected by training people to be more self-coordinating.

That book is the second item I list here in a curated reading list on creating and sustaining high-performance organizations:
https://github.com/pdfernhout/...

Another book by one of the authors (Tom DeMarco) is listed as the first item: "Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency"

But, this is all easier said than done in practice.

Comment How Khan Academy handles email transparency (Score 4, Interesting) 148

http://bjk5.com/post/718871964...
"Every team has two email addresses: one for team members and one for the team's "blackhole." [For example: ] analytics-team@khanacademy.org and analytics-blackhole@khanacademy.org.
    The -team@ address is for emailing all members of the team. When you send email to analytics-team@, you expect everyone on the analytics team to read it. Subscribing to analytics-team@ means analytics-related email will land in your priority inbox as soon as it's sent, and you're expected to read it.
    The -blackhole@ address is for anything else that has anything to do with analytics. When you CC:analytics-blackhole@, you don't expect subscribers to immediately read it. Subscribing to analytics-blackhole@ means you'll receive analytics-related email, but it'll get filtered out of your inbox and you're not expected to read it unless you feel like it. ... Anybody in the org can join any of these email lists. analytics-team@ is usually just team members, but analytics-blackhole@ has all sorts of lookie-loo subscribers who're interested in analytics happenings."

The approach was derived from how Stripe does it: https://stripe.com/blog/email-...

So, given the original story, maybe this transparency approach has an extra side effect (perhaps unintended) of maintaining trust in an organization by avoiding the "directly CC-ing the boss" effect?

It's not quite BCCing the whole company -- like Tesen joked -- as it is more organized. But essentially the whole company could in theory read (almost) anything with that approach.

Comment KIM-1 for me, too! (Score 1) 857

Great story of coming full-circle.

My first store-bought computer was also a KIM-1. I had wanted a computer for years, always looking at advertisements in magazines, and subscribing eventually to BYTE. I remember going together with my father to a computer store (on Long Island) to look around. I think it was a second-floor showroom which was not very big -- maybe over other stores or in a house? I remember seeing some kind of computer there on a table with a terminal and a disk drive comping PASCAL or something like that. The KIM-1 was probably the cheapest thing there -- sitting in a display case by the cash register.

My father and I soldered a power supply together for it. I seem to remember saving longer programs to cassette tape.

Before the KIM, I had built circuits from logic ICs from RadioShack, and before those I had built circuits from discarded lights and switches my father had brought home from work. I had also haunted RadioShacks to play with the TRS-80s there -- and learned a lot by doing the exercises using pencil in a TRS-80 tutorial guide "Users Manual for Level 1".
https://archive.org/details/Le...

I was lucky that a high school teacher also had a computer company selling educational computers. He would loan me PETS for a time I would write some software for or fix up or do other things with. One time he loaned me an Apple II for a couple days -- but that is all I ever did with one of those. Our high school (in the late 1970s) also was part of a Long Island BOCES timesharing group so we could dial-in from school (or later home on a PET) to a PDP-10 and run stuff there (not that I understood that much of what was going on the PDP-10 back then).

I sold the KIM-1 (sigh) to get money to buy my own PET from that teacher, and then got a printer and a dual floppy disk drive (forgoing all my future allowance to pay for it). Overlapping the PET I got a VIC (which I wrote a video game for which helped pay for college) and then a C64. I really liked Forth cartridges I got for the VIC and C64. I made an interface box so a PET, VIC, or C64 could control relays and extra multiplexed I/O lines (binary, A/D, and D/A). I interfaced that to a Battle Iron Claw robot from RadioShack I used in my undergraduate AI research

Eventually, I got a couple of embedded 6811-based Forth computers for fun -- I used them to radio control a Petster robot cat. Later I got a (Panasonic?) portable with a micro-tape drive I ended up returning at my manager's suggestion when the lab I was working at got a portable 8086 computer he let me take home (still wish I had kept the other laptop which was surprisingly good), then a Z88 portable, and finally my first 80386 IBM PC from Gateway I needed for a a computer contracting job.

After that was bunch of other PCs and Macs, Newtons , a Palm Pilot, a couple handheld Linux devices, a couple of OLPCs, and so on -- into the current days of Chromebooks, Arduinos, Raspberry Pi, OpenWRT-powered routers, and of course PC & Mac laptops.

Might have missed something or other in there.

Frankly, I no longer know exactly how many computers I own. :-)

The KIM-1 It was a big mystery to me at first. I had gotten an assembly language programming book but did not really understand it. It took quite a while to "click" and I'm not sure it ever really did until I later did assembly using a PET -- both to Peek and Poke and to run a macro assembler on the PET. But the KIM-1 set me up well to understand the PET quickly -- as well as a "Cardiac" cardboard computer we used in high school.

So, I can credit starting with a KIM-1 as teaching me a lot about the fundamentals of computing which has helped me throughout my career -- especially having confidence I can understand systems all the way to the metal (in theory). Thanks, Dad!!!

Sadly, my own kid has little interest in the low-level details of computers. Nowadays, pre-made applications can do so much such as Minecraft and Space Engineers, it's hard for kids to get excited about adding two numbers together with assembly language or wiring up your own multiplexer or whatever -- whereas when we started, the basics were the fun stuff that seemed to open up doors to fun and careers.

I'm curious though about WebAssembly as maybe a way to have low-level fun again? :-)

Lucky you to be in embedded. Doing web stuff now and so much of the underlying technology base is inefficient badly-designed junk piled on more of the same. For example, I have to wait tens of seconds for rebuilds of complex web stacks when on my VIC-20 with a Forth Cartridge (millions of times slower as a computer) I could just edit the (dis)assembly by hand and keep going. :-) Obviously modern computers can do so much more, but a certain level of interactivity, robustness, and comprehensibility seems lost.

Some quasi-low-level programming humor. :-)
https://aphyr.com/posts/341-he...

Comment Re:It's very simple (Score 2) 63

and you do nothing

Except that every time CloudFlare has been notified, they have disabled the content that they were notified about, as required by the DMCA, unless you have evidence that they are not complying with the DMCA (which the MPAA and RIAA don't or they'd have marched straight to the courthouse to put an end to it rather than paying people to whine about it online).

Look, I get it, the MPAA/RIAA bribed the fuck out of the Democrats to get the DMCA and now you feel like the law they bought isn't working and they should get a refund. But guess what! It's the law until it's replaced.

Now, the question is whether you think you can replace the law with one where they should use psychic power to determine whether or not a given file would be found to be infringing by a court and block that file if so. If you think a law like that is going to fly, well, I'm sure the Democrats have their donation slots WIDE open for 2018.

Comment Sal Khan skipped MIT classes but did problem sets (Score 1) 178

... as he explains in his "The One World Schoolhouse: Education Reimagined" book: https://www.khanacademy.org/ab...

Sal Khan says it won't be right for everyone, but if you are motivated, the "seat time" as a "passive learner" in large lecture courses is mostly wasted time compared to being an "active learner" working through problem sets. He says there that skipping classes was how he and others at MIT were able to take double the normal course load and graduate with high grades and multiple degrees. See:
https://books.google.com/books...

So, in that sense, it might not be surprising or an indictment of college that the GP AC poster was able to miss all the 8am classes for a course and still pass it -- if they did the assignments and otherwise read the text book or other readings and such.

Of course, while class skipping may work for large lecture courses, it may be more problematical for the best sort of small seminar courses where a lot of active participation goes on in class as discussion and is part of the learning process.

So, without knowing the class and what the GP AC did to pass it, it it hard to generalize about college.

That said, you might like these links I put together almost a decade ago on problems with current schooling practices and various alternatives:

"[p2p-research] College Daze links (was Re: : FlossedBk, "Free/Libre and Open Source Solutions for Education")"
https://wiki.p2pfoundation.net...

"[p2p-research] The Higher Educational Bubble Continues to Grow"
https://wiki.p2pfoundation.net...

"[p2p-research] Rebutting Communique from an Absent Future (was Re: Information on student protests)"
https://wiki.p2pfoundation.net...

Comment Re: oh no (Score 1) 423

A few years ago I came across my old BBS number during a Google search and decided to call it and see who answered.

It rings once and then...a modem sound.

Freaked me out until I discovered it was just a fax machine that actually blasted that noise on answering.

Comment On breeding friendlier corporations and AIs (Score 1) 131

Part of something I posted in 2000 to Doug Engelbart's "Unifinshed Revolution II" colloquium touching on corporations as "AIs":
http://www.dougengelbart.org/c...

========= machine intelligence is already here =========
I personally think machine evolution is unstoppable, and the best hope for humanity is the noble cowardice of creating refugia and trying, like the duckweed, to create human (and other) life faster than other forces can destroy it.

Note, I'm not saying machine evolution won't have a human component -- in that sense, a corporation or any bureaucracy is already a separate machine intelligence, just not a very smart or resilient one. This sense of the corporation comes out of Langdon Winner's book "Autonomous Technology: Technics out of control as a theme in political thought".
    http://www.rpi.edu/~winner/

You may have a tough time believing this, but Winner makes a convincing case. He suggests that all successful organizations "reverse-adapt" their goals and their environment to ensure their continued survival. These corporate machine intelligences are already driving for better machine intelligences -- faster, more efficient, cheaper, and more resilient. People forget that corporate charters used to be routinely revoked for behavior outside the immediate public good, and that corporations were not considered persons until around 1886 (that decision perhaps being the first major example of a machine using the political/social process of its own ends).
    http://www.adbusters.org/magaz...

Corporate charters are granted supposedly because society believe it is in the best interest of *society* for corporations to exist. But, when was the last time people were able to pull the "charter" plug on a corporation not acting in the public interest? It's hard, and it will get harder when corporations don't need people to run themselves.
    http://www.adbusters.org/magaz...
    http://www.adbusters.org/campa...

I'm not saying the people in corporations are evil -- just that they often have very limited choices of actions. If a corporate CEOs do not deliver short term profits they are removed, no matter what they were trying to do. Obviously there are exceptions for a while -- William C. Norris of Control Data was one of them, but in general, the exception proves the rule. Fortunately though, even in the worst machines (like in WWII Germany) there were individuals who did what they could to make them more humane ("Schindler's List" being an example).

Look at how much William C. Norris http://www.neii.com/wnorris.ht... of Control Data got ridiculed in the 1970s for suggesting the then radical notion that "business exists to meet society's unmet needs". Yet his pioneering efforts in education, employee assistance plans, on-site daycare, urban renewal, and socially-responsible investing are in part what made Minneapolis/St.Paul the great area it is today. Such efforts are now being duplicated to an extent by other companies. Even the company that squashed CDC in the mid 1980s (IBM) has adopted some of those policies and directions. So corporations can adapt when they feel the need.

Obviously, corporations are not all powerful. The world still has some individuals who have wealth to equal major corporations. There are several governments that are as powerful or more so than major corporations. Individuals in corporations can make persuasive pitches about their future directions, and individuals with controlling shares may be able to influence what a corporation does (as far as the market allows). In the long run, many corporations are trying to coexist with people to the extent they need to. But it is not clear what corporations (especially large ones) will do as we approach this singularity -- where AIs and robots are cheaper to employ than people. Today's corporation, like any intelligent machine, is more than the sum of its parts (equipment, goodwill, IP, cash, credit, and people). It's "plug" is not easy to pull, and it can't be easily controlled against its short term
interests.

What sort of laws and rules will be needed then? If the threat of corporate charter revocation is still possible by governments and collaborations of individuals, in what new directions will corporations
have to be prodded? What should a "smart" corporation do if it sees this coming? (Hopefully adapt to be nicer more quickly. :-) What can individuals and governments do to ensure corporations "help meet society's unmet needs"?

Evolution can be made to work in positive ways, by selective breeding, the same way we got so many breeds of dogs and cats. How can we intentionally breed "nice" corporations that are symbiotic with the humans that inhabit them? To what extent is this happening already as talented individuals leave various dysfunctional, misguided, or rouge corporations (or act as "whistle blowers")? I don't say here the individual directs the corporation against its short term interest. I say that individuals affect the selective survival rates of corporations with various goals (and thus corporate evolution) by where they choose to work, what they do there, and how they interact with groups that monitor corporations. To that extent, individuals have some limited control over corporations even when they are not shareholders. Someday, thousands of years from now, corporations may finally have been bred to take the long term view and play an "infinite game".

========= saving what we can in the worst case =========
However, if preparations fail, and if we otherwise cannot preserve our humanity as is (physicality and all), we must at least adapt with grace whatever of our best values we can preserve or somehow embody in future systems. So, an OHS/DKR to that end (determining our best values, and strategies to preserve them) would be of value as well.

Comment Fictional AI in 1964 Great Time Machine Hoax novel (Score 1) 131

https://en.wikipedia.org/wiki/...

It runs the world by printing out business letters (and checks) that hire people to expand itself.

https://www.worldswithoutend.c...
"Chester W. Chester IV, sole surviving heir of eccentric millionaire-inventor Chester W. Chester I, has entered into his inheritance: a semi-moribund circus; a white elephant of a run-down neo-Victorian mansion furnished with such hot items as TV sets shaped like crouching vultures; the old gentleman's final invention, a mammoth computer whose sole value seems to be as scrap metal; and one more thing--a million credits in back taxes. Either he comes up with the million credits, or it's up-the-river for Chester for a long, long time. That's why Chester is desperate enough to use the Generalized Nonlinear Extrapolator (Genie for short) to perpetrate one of the biggest entertainment scams of all time--The Great Time Machine Hoax."

I enjoyed that novel a lot and read it multiple times -- especially for the aspects of learning and training to become a more capable person (if maybe not a wiser and more compassionate one depending what you study).

Comment Re:memory allocation errors, gone. (Score 1) 300

I start by using my knowledge of whatever it is that I expect to receive to pick a reasonable size starting chunk, say if I'm expecting to receive a line of text from an IRC client, maybe bufsize=256;. Then, if I read 256 bytes and don't receive a newline, I double the buffer size and read another 256 bytes. If I still haven't received a newline, I double the buffer size and read 512 bytes and so on. The realloc() system call allows me to (attempt to) extend the buffer, so it does not have a fixed length.

Comment Re:memory allocation errors, gone. (Score 1) 300

You don't know the length of the input until you have read it in. To read it in you need a buffer, that buffer will have a fixed length.

realloc() says hi. You can read() bufsize bytes from your source, determine if you have reached the end of input, and if not, allocate more memory for your buffer and continue to read() some more.

Comment Thanks for insights on FLOSS people & circumst (Score 1) 116

It does take people to advocate for ideas, but the time usually has to be right too.

Reminds me of Antonio Gramsci's comments on economic change: http://www.theory.org.uk/ctr-g...
"Gramsci was concerned to eradicate economic determinism from Marxism and to develop its explanatory power with respect to superstructural institutions. So, he held that:
* Class struggle must always involve ideas and ideologies, ideas that would make the revolution and also that would prevent it;
* He stressed the role performed by human agency in historical change: economic crises by themselves would not subvert capitalism;
* Gramsci was more "dialectic" than "deterministic": he tried to build a theory which recognised the autonomy, independence and importance of culture and ideology."

And in Antonio Gramsci's own words from there:
"A crisis occurs, sometimes lasting for decades. This exceptional duration means that incurable structural contradictions have revealed themselves (reached maturity) and that, despite this, the political forces which are struggling to conserve and defend the existing structure itself are making every effort to cure them, within certain limits, and to overcome them. These incessant and persistent efforts ... form the terrain of the 'conjunctural' and it is upon this terrain that the forces of opposition organise. ... Critical self-consciousness means, historically and politically, the creation of an elite of intellectuals. A human mass does not 'distinguish' itself, does not become independent in its own right without, in the widest sense, organising itself: and there is no organisation without intellectuals, that is without organisers and leaders... But the process of creating intellectuals is long and difficult, full of contradictions, advances and retreats, dispersal and regrouping, in which the loyalty of the masses is often sorely tried. ... So one could say that each one of us changes himself, modifies himself to the extent that he changes the complex relations of which he is the hub. In this sense the real philosopher is, and cannot be other than, the politician, the active man who modifies the environment, understanding by environment the ensemble of relations which each of us enters to take part in. ...."

Comment A parable about structural unemployment and BI (Score 1) 56

"There won't be any jobs for machinists or assemblers. There won't be jobs for anyone. There won't be anyone working except billionaire Bezos telling you to buy shit from robots. When you can't afford to buy, the economy won't need you anymore ..."

I made this parable in 2010 that is about a world that develops along those lines:
"The Richest Man in the World: A parable about structural unemployment and a basic income "
https://www.youtube.com/watch?...

Slashdot Top Deals

"Only the hypocrite is really rotten to the core." -- Hannah Arendt.

Working...