-
3 votes
-
The steampunk rover concept that could help explore Venus
8 votes -
IFTTT Pro
11 votes -
Unstaffed, digital supermarkets transform rural Sweden – Lifvs start-up has opened nineteen stores across the country, choosing remote places that have lost their local shops
15 votes -
Japanese convenience store chain begins testing remote controlled robot staff in Tokyo
6 votes -
Five rules for successful test automation
5 votes -
Boardgame Lab: Automation without writing code
3 votes -
What is hyper-automation? Demystifying a new buzzword
6 votes -
Email isn’t broken, email clients are
12 votes -
Manna, by Marshall Brain
Chapter 1 Chapter 2 Chapter 3 Chapter 4 Chapter 5 Chapter 6 Chapter 7 Chapter 8
6 votes -
Phone automation - Share your workflows!
I recently switched operating systems on my phone and lost some of the automated workflows I had during the transition. While I've rebuilt some of it, but it sometimes feels like I'm missing...
I recently switched operating systems on my phone and lost some of the automated workflows I had during the transition. While I've rebuilt some of it, but it sometimes feels like I'm missing something or that I could do more, I just don't know what exactly. I'd like to hear from others here and see if they can inspire me to implement what works for them. I'm using an android phone with automate and here's the workflows that I got:
- When plugging in the phone, set it to do not disturb and enable Bluetooth. This is for when I go to sleep so that I don't get woken up by notifications and I can listen to podcasts on my headband.
- If at work (Based on cell towers, not GPS) set phone to vibrate, when leaving it set it to ring. I actually lost this one but haven't rebuilt it since I've not been to the office in a while.
- Learn location. For a set time, grabs the cell towers around and stores them in a JSON file.
What kind of automation have you implemented on your phone?
18 votes -
Schools turn to surveillance tech to prevent Covid-19 spread: "We are very much interested in the automated tracking of students"
6 votes -
How lockdown is changing shopping for good
8 votes -
Wink smart home users have one week to subscribe or be shut off
16 votes -
The city of Helsinki had the right to scrap its contract with Siemens over the failed automation of the Finnish capital's metro
6 votes -
What tasks on your computer have you automated?
After using Shreddit to delete my Reddit history periodically for some time now, I finally decided to make a cron job to automate it on a weekly basis. I use it to delete every post and comment...
After using Shreddit to delete my Reddit history periodically for some time now, I finally decided to make a cron job to automate it on a weekly basis. I use it to delete every post and comment that isn't whitelisted, which right now is just a tiny subreddit for a musician I like that I solely moderate and a pinned post explaining why I have a bunch of karma but barely any posts.
After setting this up, it got me curious as to what tasks other people automate in their lives in order to streamline their workflows and eliminate minor (or major) routine tasks.
So, what do you automate, and how did you go about doing it?
18 votes -
What do you do when asked to automate away other peoples' jobs?
At work there's a project that was originally pitched as an automated system we would build for a new client, and now the conversation has shifted towards automating away some data entry tasks for...
At work there's a project that was originally pitched as an automated system we would build for a new client, and now the conversation has shifted towards automating away some data entry tasks for an existing client. If the project is successful I would guess that some or all of the people doing the data entry tasks would be out of a job. And if it's a resounding success I would guess that the powers that be would be eager to apply it in other areas and potentially put more people out of jobs.
This project is in the very early stages of gathering requirements and whatnot so it's not really clear what exactly we're building or what my role in building it would be. But it involves a technology that's new to us (natural language processing) and often times I end up playing some role in a project that involves learning something new, even if it's just in some small way.
So yeah, I know automation replacing low-skill work is nothing new and if these jobs can be automated away, they will be sooner or later, but this is the first time I've been confronted with the idea of using my skills to put people I don't know out of a job and it sticks in my craw. Normally I love automation and interacting with new (to me) tech even if it's nothing groundbreaking and I'm just doing the plumbing to connect system A to interface B, but in the past it's always been in the name of freeing up people from tedious tasks so that they can do more interesting and more important work, rather than "freeing" them of their paycheck. So I'm finding myself adding this to the small but compelling pile of frustrations I have with this job and weighing it against the also-small but also-compelling pile of things I love about it.
Anyway, if you've ever been in a position where you were asked to automate away someone else's job, how did that go? What did you do?
If you haven't, what do you think you would do?
16 votes -
Walmart employees say they’re preparing for job cuts as retailer rolls out its ‘Great Workplace’ program
9 votes -
Will the 2020s be the decade that the robots finally come for our jobs?
7 votes -
The economic effects of automation aren’t what you think they are
13 votes -
Five reasons why software testing needs humans
6 votes -
Measuring the maturity of a continuous delivery pipeline
5 votes -
The bot scare
5 votes -
Flash crashes and dark pools; High-frequency trading explained
6 votes -
The fact-check industry - Has our investment in debunking worked?
6 votes -
Dumbass Home 2.0: Home automation without bullshit
21 votes -
How standardised are Z-Wave/ZigBee device APIs? Can I directly control off-the-shelf hardware?
I'm looking to get a couple of remote controlled dimmer sockets for a quite specific use case (heat lamps in a tortoise enclosure), and I'd like to control them directly from a Raspberry Pi. I've...
I'm looking to get a couple of remote controlled dimmer sockets for a quite specific use case (heat lamps in a tortoise enclosure), and I'd like to control them directly from a Raspberry Pi. I've found a couple of decent looking fairly generic options - examples from Trust and TKB - and there seem to be several appropriate radio modules, either USB or GPIO.
Detecting and pairing with devices seems (hopefully) straightforward. My sticking point is trying to figure out how standardised the actual messaging is; there seem to be several brands of hub and device that can be used interchangeably, but a few that can't. In my case, of course, the RasPi will be taking the position of the hub and speaking to the devices directly.
I'm having trouble finding reliable info on whether a command like "dim to 70%", or "read output power" will be the same across all devices, whether it will follow some kind of standard but it may be one of several competing formats, or whether it's completely proprietary.
Any insight on how easy it is to programatically talk to these things would be very much appreciated!
6 votes -
Digital dystopia: How algorithms punish the poor
11 votes -
Preparing for our prefab future
9 votes -
New infrared-based technology promises to give textiles recycling a giant leap forward by replacing manual sorting with an automated method in Finland
3 votes -
Security researchers find several bugs in Nest security cameras
10 votes -
Ordinary Americans are using armies of phones to generate extra income for beer, diapers, and bills through ad fraud
8 votes -
The world's first automatic textile recycling facility will be built in Malmö
6 votes -
Universal Basic Income - Life after automation
8 votes -
Schools are using software to help pick who gets in. What could go wrong?
7 votes -
Google is shutting down the "Works with Nest" API on August 31, 2019
5 votes -
The hundred-tonne robots that help keep New Zealand running
3 votes -
Mark Zuckerberg & Yuval Noah Harari in Conversation
5 votes -
Walmart unveils an AI-powered store of the future, now open to the public
6 votes -
The age of robot farmers - Picking strawberries takes speed, stamina, and skill. Can a robot do it?
14 votes -
Moving into software defined networking and devops? Here's the skills you need and how to acquire them
5 votes -
How I eat for free in NYC using Python, automation, artificial intelligence, and Instagram
34 votes -
Dyer: Rising unemployment fueling anti-migrant sentiment in rich countries
6 votes -
Make Emacs write (part of) your git commit messages
I was fed up with the chores of writing consistent git commit messages, so a while ago I started developing a hook in Emacs which I used with Magit (actually git-commit-mode) which uses some crude...
I was fed up with the chores of writing consistent git commit messages, so a while ago I started developing a hook in Emacs which I used with Magit (actually
git-commit-mode
) which uses some crude heuristics to fill out theCOMMIT_EDITMSG
buffer for me. Here is what it does (|
stands for the cursor):-
If only a single file modified, insert
<filename>: |
- If can figure out function name, insert
<filename> (<functionname>): |
- If can figure out function name, insert
-
If only a single file added, insert
Add <filename>|
-
If a
TODO
added toReadme.org
, insert; TODO <headline>|
-
If a
TODO
wasDONE
, insert; DONE <headline>|
-
If the files are
Readme.org
andReadme.org_archive
, and no new TODO's were added anywhere, insert; Archive DONE|
-
If the file is
.gitignore
, insert; Ignore |
-
If the file is
TAGS
, insert; Update TAGS|
I extend this when I find new cases where I repeatedly do the same thing. The code is below. It's probably a good idea to use it as a starting point and personalise it because this reflects how I like to write my commit messages (and I like pretending how they do it over at Emacs git repo). It is sloppy and probably buggy, but I don't think it can be destructive.
Final note: I can't figure out how to set this up so that after this takes effect, the buffer is marked as modified. I want to flip the modified bit so that in some cases I can just hit
C-c C-c
and go. But I need to modify the buffer somehow to commit in some cases (I just typeC-o
to open a new line in those cases). Here is the function:(defun gk-git-commit-mode-hook () "Set up git commit buffer." ;; If a single file is modified, prefix the message w/ it. (let ((modified-re "^# modified:") (new-re "^# new file:") (issue-re "^[+\\- ]\\*+ \\(TODO\\|DONE\\) ") current-defun filename addp onlyp issuep) (save-excursion (with-current-buffer "COMMIT_EDITMSG" (goto-char (point-min)) (re-search-forward "^# Changes to be committed:" nil t) (forward-line) (beginning-of-line) (cond ((looking-at modified-re) (re-search-forward ": " nil t) (setf filename (thing-at-point 'filename t))) ((looking-at new-re) (re-search-forward ": " nil t) (setf filename (thing-at-point 'filename t) addp t))) (setq onlyp (progn (forward-line) (not (or (looking-at modified-re) (looking-at new-re))))) (when (and onlyp (equal filename "Readme.org")) (goto-char (point-min)) (when-let* ((pos (re-search-forward issue-re nil t))) (setq issuep (progn (re-search-backward "\\*" nil t) (buffer-substring (1+ (point)) (line-end-position)))))) ;; Try to set ‘current-defun’. (when onlyp (save-excursion (goto-char (point-min)) ;; Error if not found, means verbose diffs ;; not enabled. (re-search-forward "^diff --git") (goto-char (line-beginning-position)) (let ((str (buffer-substring (point) (point-max))) (default-directory (expand-file-name ".."))) (with-temp-buffer (insert str) (diff-mode) (goto-char (point-min)) (setq current-defun (diff-current-defun)))))))) (if onlyp (cond ((and issuep (not addp)) (goto-char (point-min)) (insert ";" issuep)) ((equal filename "TAGS") (goto-char (point-min)) (insert "; Update TAGS")) ((equal filename ".gitignore") (goto-char (point-min)) (insert "; Ignore ")) (filename (goto-char (point-min)) (if addp (insert "Add " filename) (insert filename (if (and current-defun) (format " (%s)" current-defun) "") ": ")))) (when (and (equal filename "Readme.org") (save-excursion (goto-char (point-min)) (re-search-forward (concat modified-re " +Readme.org_archive") nil t)) (save-excursion (goto-char (point-min)) (re-search-forward "\\-\\*+ DONE" nil t)) (not (save-excursion (goto-char (point-min)) (re-search-forward "\\+\\*[\\+\\-] TODO" nil t)))) (goto-char (point-min)) (insert "; Archive DONE"))))) (add-hook 'git-commit-mode-hook #'gk-git-commit-mode-hook)
Hope you find it useful.
12 votes -
-
The rise of robot authors: Is the writing on the wall for human novelists?
4 votes -
Giving automation the power to detect crime and enforce punishment has ramifications, even for minor infractions
8 votes -
The microphones that may be hidden in your home
23 votes -
What Could Kill Testing?
8 votes -
Andrew Yang: The 2020 candidate warning of the rise of robots. The entrepreneur says Trump won in 2016 because the US automated away jobs – so he wants to become president to do something about it.
7 votes -
My indoor garden setup
A few people have expressed interest in my indoor, semi-automated growing setup so here's the lowdown.. In a corner of my workshop is a cupboard with a footprint of 1.6x1.2m, 2.2m high. This is...
A few people have expressed interest in my indoor, semi-automated growing setup so here's the lowdown.. In a corner of my workshop is a cupboard with a footprint of 1.6x1.2m, 2.2m high. This is insulated with a mixture of glasswool, foam board and expanding foam (depending on what I could install where), and lined with diamond pattern aluminumised mylar (the diamond pattern provides diffuse reflection to avoid hotspots).
Inside the cupboard I have 750W of full-spectrum LED lighting, a 500W oil-filled radiator, and a small fan to keep air moving around. There's a vent which pulls air from the outside and a extractor fan which also vents outside. Being able to pull cool air from the outside (even in summer) is extremely useful as the lights can put out quite a lot of heat.
My main growsystem is an Amazon low-pressure aeroponics system, and I've also got some airpots to do some soil-based growing in. Aero on the right, pots on the left. If you're not familiar with aeroponics, it's a system where the plants roots hang in open space and nutrient-rich water is sprayed or misted over them. High-pressure aero uses mist and low pressure uses sprayers. High pressure aero is currently one of the best known ways to maximise plant growth but low-pressure is pretty good too and you don't need anywhere near as much gear like pressure vessels and solenoid and so on. I just have an aquarium pump which drives the sprayers. In my experience aero is considerably more efficient than soil, non-soil media or other hydroponics - but on the other hand it's very twitchy. If your nutrient balance is off or your pH is wrong or worse, you pump fails - things can go wrong very quickly.
The airpots are totally new to me. People say they're good but I have no idea. I have a mixture of compost, perlite and coco coir to go into them so we'll see how that works out. I'm going to use organic nutrients only on them, I have some seaweed derived stuff which should be good throughout the entire grow process.
So that's the hardware, now on to the fun bit - the automation...
On top of the cabinet is a board hosting a Raspberry Pi model A - these days I'd use a Zero W but they didn't exist when I built this. In it's mostly-bare state the board looks like this. Quick explanation - the red board is mains-rated relays which let me switch the connections above it on and off using the Pi. This is where the lights, fan and heater are wired to. The small junction block left of the relays is connected to mains.
The block up and left of the Pi is 5V, which drives the Pi, the relay control electronics and provides power to the junction block on the right. There are various sensors wired in to that block and connected back to the Pi.
Wired up on my bench for testing it looks like this, and in situ it looks like this (this was on a previous iteration of the cupboard but it's basically the same now). The orange cables on the left are lights, fan and heater. The black cables top are the sensors.
Temperature is monitored using five DS18B20 sensors, which are cheap and reasonably accurate serial devices so you can run a whole bunch of them off a single pin on the pi. I monitor my water temperature, the temperature at the plant stem, at the wall, inside my workshop (but outside the cupboard) and outside temperature. The wall/stem temperature is the important one, that determines whether heating or cooling is engaged. I monitor the exterior and interior temperatures to know how effective my insulation is being. If water temperature gets too high I might add an agent which protects against microbial infections that like warmer water.
I do have a DHT22 humidity sensor but they're hella flaky and it's currently not working. I will replace it at some point but past experience suggests humidity is high whatever I do.
The Pi has a python script which runs every five minutes. It reads all the sensors, decides what (if anything) to do, then logs everything in a sqlite database. If it's 'night' (which is actually day outside, for temperature management reasons) it turns the lights off, if it's 'day' it turns them on. If it's cold it turns the heater on, if it's hot the fan. There's a bit of smartness where it actually aims for a midpoint of temperature because otherwise it's always aiming for highest temperature then immediately cooling again, then heating and so on - a stable temperature is better for the plants. At 'night' I tend to run the fan to drop the temperature: plants often like it cooler during darkness, get some fresh air in and attempt to lower the humidity a bit.
There is a web interface which lets me see what's going on - current temperature and status, plus some lovely lovely charts (who doesn't love a nice chart?). I can also turn the lights out from here in case I need to go in an do some maintenance for anything. 750W of LED light is painfully bright, it's much more comfortable (and safer!) to turn them off while topping up reservoirs or changing water or whatever.
It would be relatively trivial to add sensors for moisture or pH to add an auto-watering or auto-adjusting nutrient systems, but I haven't felt the need to do that yet.
Happy to do my best to answer any questions anyone has.
26 votes