Please create an account to participate in the Slashdot moderation system

 



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) 57

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 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 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 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 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?...

Comment Exactly -- we instead need to make the most of it! (Score 1) 130

As I wrote here: http://web.archive.org/web/201...
"Now, there are many people out there (including computer scientists) who may raise legitimate concerns about privacy or other important issues in regards to any system that can support the intelligence community (as well as civilian needs). As I see it, there is a race going on. The race is between two trends. On the one hand, the internet can be used to profile and round up dissenters to the scarcity-based economic status quo (thus legitimate worries about privacy and something like TIA). On the other hand, the internet can be used to change the status quo in various ways (better designs, better science, stronger social networks advocating for some healthy mix of a basic income, a gift economy, democratic resource-based planning, improved local subsistence, etc., all supported by better structured arguments like with the Genoa II approach) to the point where there is abundance for all and rounding up dissenters to mainstream economics is a non-issue because material abundance is everywhere. So, as Bucky Fuller said, whether is will be Utopia or Oblivion will be a touch-and-go relay race to the very end. While I can't guarantee success at the second option of using the internet for abundance for all, I can guarantee that if we do nothing, the first option of using the internet to round up dissenters (or really, anybody who is different, like was done using IBM [tabulators] in WWII Germany) will probably prevail. So, I feel the global public really needs access to these sorts of sensemaking tools in an open source way, and the way to use them is not so much to "fight back" as to "transform and/or transcend the system". As Bucky Fuller said, you never change thing by fighting the old paradigm directly; you change things by inventing a new way that makes the old paradigm obsolete."

Comment The Real Old Guy? Wow!!! (Score 1) 70

I loved your Chronicles!
https://www.amazon.com/Chronic...
"In the distant future mankind creates sentient cybertanks patterned on the human brain to help fight their alien enemies. Then, inexplicably, the humans vanished. They just went away. All that is left of the human empire are the cybertanks who, in their own way, keep the human civilization alive. With an intelligence based on the human psyche, the cybertanks continue to defend human space, but also perform scientific research, create art, form committees and ponder the universe. These are the stories of one of the first cybertanks, known to his friends as âoeOld Guy.â He has outlived most of his peers, and has had a wealth of experiences over his long life, but he is starting to slowly become obsolete. Join him and his comrades Double-Wide, Whiffle-Bat, Smoking Hole, Mondocat, and Bob, as they live and love and fight alien enemies such as the deadly Fructoids, the Yllg, and the fiendish Amok."

And I also liked the other three novels you wrote about your adventures too (including one about when a backup copy of your program was activated back on Earth)!

Comment Re:Mithril is awesome! (why JSX is worse) (Score 1) 70

Sorry, I don't think you get the level of integration possibly by the Mithril/TypeScript combo and how well it supports refactoring and debugging compared to coding big chunks of your application in ad hoc templating systems like JSX. And that just gets even better when you use something like Tachyons.js for CSS. When everything is TypeScript (or JavaScript), a programmer can use standard tools to do everything instead of hitting arbitrary boundaries where things work differently when you run into template issues. For example, how does an IDE know how to refactor JSX? Or how do you set break points in JSX? Or how do you parameterize the generation of JSX? There may be answers to those three questions, but they are non-obvious.

There is a huge difference between progressive enhancement of one page of HTML from the 2000s and the idea of writing a complex cross-platform application with 100s of pages that just happens to run in a browser and just happens to use the DOM and just happens to use a JavaScript VM.

Mithril has its warts (the latest version fixes a bunch of them) but overall technically (one can debate community size and its implication) Mithril is still better than most everything else I've seen for SPAs -- except maybe Elm but that is a bigger leap).

Comment Re:Mithril is awesome! (What is a SPA for PNI?) (Score 1) 70

Thanks for asking. Participatory narrative inquiry is an approach in which groups of people participate in gathering and working with raw stories of personal experience in order to make sense of complex situations for better decision making. Essentially, the NarraFirma app leads someone step-by-step through a process of story gathering, sensemaking from those stories, and possibly intervention based on those results. That process is defined in a 700 page textbook my wife wrote: http://workingwithstories.org/

Comment Mithril is awesome! Really!!! (Score 3, Interesting) 70

HTML is a useful way of encoding static documents -- but it does not belong in a single-page application in my opinion. Stuff like JSX or Angular2 templates takes a standard (HTML) and makes adhoc changes -- which is a bad thing to do to a standard!

Mithril does the right thing by generating DOM from real programming code. If you use Mithril from TypeScript like I do, all that DOM-generating code is easily refactorable using an IDE just like any other code.

If you also use Tachyons.js or similar for CSS, you can also do styling in the same file -- like any standard development system in the past (like Java or Python or Smalltalk).

It's really sad that JavaScript developers are forced to be less productive their entire careers and have ugly lumps of junk in the middle of their source code just in case some "designer" might want to spend an hour playing with HTML and CSS in the application.

Ask a Java programmer if they want to code UIs that way -- with three files for every UI page written in three different languages -- three files that most IDEs can't even connect together for navigation and semantic search and refactoring.

My biggest Mithril app to date:
https://github.com/pdfernhout/...
https://narrafirma.com/try-nar...

It's really unfortunate some Slashdot editor saw fit to announce this on April Fools because it makes it less likely people will take is seriously.

Slashdot Top Deals

The number of computer scientists in a room is inversely proportional to the number of bugs in their code.

Working...