Multiple Slashdotters arereporting the unfortunate news that famed free software advocate and computer scientist Richard Stallman has resigned from MIT. Slashdot reader iamacat writes: Following outrage over his remarks about Jefferey Epstein's victims, Richard Stallman has resigned from his position in MIT, effective immediately. I'm sure everyone in the Slashdot community will miss him -- even if you didn't enjoy his work, there's no denying his contributions to popular culture. Truly an American icon. "I am resigning effective immediately from my position in CSAIL at MIT," Stallman wrote in an email, referring to MIT's Computer Science and Artificial Intelligence Laboratory. "I am doing this due to pressure on MIT and me over a series of misunderstandings and mischaracterizations."
Stallman also resigned as president from the Free Software Foundation (FSF) as well as from the organization's board of directors, FSF announced shortly after.
Creating capacitive touch-sensitive buttons is easy these days; many microcontrollers have cap-sense hardware built-in. This will work for simple on/off control, but what if you want a linear, position-sensitive input, like you’d find on a computer touchpad or your smartphone screen? Not so easy — at least until now. Trill is a family of capacitive touch sensors you can add to your projects as a linear slider, a square touchpad, or by creating your own touch surface.
Trill was created by the same team that designed Bela, an embedded platform for low-latency interactive applications, especially with audio. The new trio of Trill sensors rely on capacitive sensing to track finger movement, and communicate over I2C with your microcontroller or development board of choice. The Trill I2C library targets Arduino and Bela, but should be easy to port to any I2C host.
The hardware and software are both open-source — or will be as the Kickstarter that launched this morning has already met its goal. The firmware for the Cypress CY8C20636A (PDF) controller that powers these sensors will be released CC-BY-NC-SA. But, starting with the controller itself sounds like a lot of work that Trill has already done for you, so let’s have a look at what we know so far, along with a healthy dose of speculation.
The Trill Bar is a 101×22 mm sensor that can detect up to five simultaneous touches on a single axis — it reports the long-axis position and size of each. Interestingly, the sensor can be cut with sturdy scissors down to a minimum 40 x 14 mm size, which sounds great for fitting it into various projects. The minimum size is presumably set by the footprint of the controller and associated components on the reverse side of the board.
We do know that each contains a microcontroller and “high-resolution analog hardware and custom firmware.” Cypress has a nice application note that explains their CapSense (R) technology (PDF) that these sensors are based on. The Trill Bar sensor consists of a number of zig-zag shaped traces, each connected to a single capacitive sensor input. When you touch the bar, the firmware measures the capacitive change on adjacent traces, and estimates each finger position from the capacitance distribution across the traces. The “size” of each touch is then estimated from the total capacitance change. There’s a lot of details, though, and the underlying hardware supports a number of different filters and tuning parameters. Getting these right may not be trivial — having this already figured out for you (and populated on a board) is the value in the Trill products.
While the linear sensor is interesting, we’re more curious about the Trill Square, a 69 x 69 mm square 2-axis sensor. This version only senses a single finger touch, but does include size sensing. It can be cut down to 33 x 16 mm — again, this constraint is likely due to the size of the circuit on the back.
There are a number of diamond-shaped pads on the active side, and an array of 15 x 15 vias are visible. From what I can glean with a quick look at the Cypress documentation, the capacitive sensing inputs are used in a matrix mode here with linear sliders for the two axes interleaved. The hardware’s slider processing is in use once again, implemented as two sliders overlaid at ninety degrees to one another. It’s really nice to offload this sensing to hardware, we can imagine all sorts of interesting interfaces you could build with this thing.
Rounding out the new sensors is the Trill Craft, which forgoes the built-in sensing pads so you can add your own. The 45 x 22 mm board has 30 channels of capacitive sensing that can be connected to anything conductive to create your own sensor. As an example, the Kickstarter page shows a musical instrument where the sensors appear to be sections of brass tubing.
The sensing resolution for the Bar and Square sensors is claimed to be less than 0.1 mm, although there are no specifications on accuracy or precision. For the intended use, however, it probably doesn’t matter — finger placement isn’t terribly accurate or precise anyway, and you typically adjust your fingers in real-time when using an interface like this. The reading latency for all of the sensors is a snappy 5 ms.
One of the videos on the Trill page shows an array of four of the Trill Squares being used to create a larger interface, with a thin vinyl sheet applied over the top. This looks like it could open up some interesting possibilities. The sensors start at £14 ( $17.50) for a single unit of any of the three models.
I would love to get my hands on some of these things to try them out, but it appears like I’ll have to wait like everyone else. If you have an interesting use in mind for sensors like these, or more insight on how they might work, sound off in the comments below.
the sensor arrangement is genius! I had gotten around to thinking how I could take a small number (say, 4) pads and repeat them around a circle to get a relative rotary motion sensor, but this is next level thinking. Luckily the optimum way to arrange the sensors is almost certainly a mathematical fact, so it's not patentable :wink:
The Serpente boards are low-cost development boards designed to be used with Adafruit’s CircuitPython. They are both virtually the same, except for the USB connector. The standard Serpente board contains a USB Type-C connector, and the Serpente Plug uses the board itself as a Type-A USB plug. If you are familiar with the Digispark boards, you may notice some similarities. This fact is of course not incidental, the Serpente boards are inspired by the Digispark, both in form-factor as well as use-cases. The Serpente boards are meant to be used as quick and dirty, yet flexible, prototyping tools.
In 107 days, Python 2 -- first released in 2000 -- will officially sunset, according to an announcement this week by "volunteers who make and take care of the Python programming language."
But according to TechRepublic, not everybody is ready:
Given Python's popularity and ubiquity, the amount of business logic hinging on Python is quite vast, presenting an issue for organizations still clinging to Python 2. JPMorgan's Athena trading platform is one of those applications -- while access has only been available directly to clients since 2018, the Athena platform is used internally at JPMorgan for pricing, trading, risk management, and analytics, with tools for data science and machine learning. This extensive feature set utilizes over 150,000 Python modules, over 500 open source packages, and 35 million lines of Python code contributed by over 1,500 developers, according to data presented by Misha Tselman, executive director at J.P. Morgan Chase in a talk at PyData 2017.
Migrating 35 million lines of code from Python 2 to Python 3 is quite the undertaking -- and JPMorgan is going to miss the deadline, according to eFinancialCareers, stating that JPMorgan's roadmap puts "most strategic components" compatible with Python 3 by the end of Q1 2020 -- that is, three months after the end of security patches -- with "all legacy Python 2.7 components" planned for compatibility with Python 3 by Q4 2020.
Modern developer practices are needed to maintain a project of this scale -- fortunately, JPMorgan uses Continuous Delivery, with 10,000 to 15,000 production changes per week, according to Tselman.
The eFinancialCareers site argues that banks "have been dragging their feet," adding that JPMorgan is not the only bank that still hasn't migrated to Python 3.
Richard Stallman has once again managed to demonstrate incredible insensitivity. There's an argument that in a pure technical universe this is irrelevant and we should instead only consider what he does in free software, but free software isn't a purely technical topic - the GNU Manifesto is nakedly political, and while free software may result in better technical outcomes it is fundamentally focused on individual freedom and will compromise on technical excellence if otherwise the result would be any compromise on those freedoms. And in a political movement, there is no way that we can ignore the behaviour and beliefs of that movement's leader. Stallman is driving away our natural allies. It's inappropriate for him to continue as the figurehead for free software.
But I'm not calling for Stallman to be replaced. If the history of social movements has taught us anything, it's that tying a movement to a single individual is a recipe for disaster. The FSF needs a president, but there's no need for that person to be a leader - instead, we need to foster an environment where any member of the community can feel empowered to speak up about the importance of free software. A decentralised movement about returning freedoms to individuals can't also be about elevating a single individual to near-magical status. Heroes will always end up letting us down. We fix that by removing the need for heroes in the first place, not attempting to find increasingly perfect heroes.
Stallman was never going to save us. We need to take responsibility for saving ourselves. Let's talk about how we do that.
 There will doubtless be people who will leap to his defense with the assertion that he's neurodivergent and all of these cases are consequences of that.
(A) I am unaware of a formal diagnosis of that, and I am unqualified to make one myself. I suspect that basically everyone making that argument is similarly unqualified. (B) I've spent a lot of time working with him to help him understand why various positions he holds are harmful. I've reached the conclusion that it's not that he's unable to understand, he's just unwilling to change his mind.