Ask Slashdot: Scripting-Friendly Smartphones?
An anonymous reader writes "I am choosing a smartphone for work, moving up from a long history of just-a-phone phones. This coincides with moving into an environment where I will have a desktop machine in my office, rather using my laptop — so I'll VPN in from home, and am looking forward to not trucking my laptop around everywhere. BUT ... this means I now won't have my laptop all the time. I have gotten used to scripting various little things that make my life easier, and would like to carry that over to the phone. For example, periodically check that a certain machine is online and backing things up the way it is supposed to; if the lab monitoring system sends me an email that the -80 freezer is up to -50, play a sound and run the vibrate system in a specific, arbitrarily chosen pattern; when I press this button, record an MP3, when I release it prep an email with it attached, that sort of thing. Does such a beast exist? Has anyone used one and if so what do you think? Bonus points if you know if I can use it with Rogers (Canadian wireless provider used by my workplace)." I've heard good things about (but never used) the payware Android app called Tasker; what other recommendations do you have for running the world from a smartphone?
Sometimes.
I'd argue this is part of the geek/hacker mindset, and while it's a valuable asset, we have to remember that this places us outside of the mass market in some fairly significant ways. As a direct result of this, we're no longer the "target market" for consumer electronics.
Any android phone that can be rooted + SL4A.
Nokia n900 would be my first choice for reasons that are obvious.
HTC HD2 would be my second choice. Laugh if you must, but the interface HTC slapped over WM 6.5 makes it halfway decent and the APIs are open for pretty much anything you want to put on it.
Don't forget about sl4a, it's still a legitimate project.
The Nokia's N900 (not the newer 900) is a full linux distro that happens to also function as a phone. It is the best computer I have ever purchased.
n900. it's open source and has a full slide out keyboard for when you have to write a script on it an emergency. normally i prefer to write such things on my desktop then use ssh to get them over to the phone, but it can be done on the phone itself too.
Really any large screen high resolution smart phone will do the trick. Basically you want a phone (most of the time) and a terminal some of the time. On screen keyboards suck. high resolution makes them easier to pack into a small foot print but doesn't address the big issue of lack of real estate. For this, I recommend (as small as you can get it) a blue tooth keyboard. Personally I use an old iGo Stowaway Ultra-Slim Bluetooth Keyboard. Small enough to carry around in the car with me, or in my pocket, if I really really need to get serious work done. If that's not an option and it's on the fly well on screen keyboard has to do the trick. Good luck, the galaxy s3 is pretty slick, albeit big, Right now I use a razr and it's performance has been pretty solid (though much to be desired in the screen).
The N9 is a wonderful phone, can certainly be scripted (I ssh into mine all the time to do things), but lacks a physical keyboard. The onscreen one is great, but because it takes half the screen it makes the shell-window smaller. (really, you might want an N950, but those "don't exist" and getting one is difficult, plus the antenna issues make it less useful as a real phone).
The N900, now hard to locate, has a great screen, a great keyboard and is the predecessor to the N9. But they have a known issue with the USB port breaking over time, so if you do actually succeed in finding one to buy don't expect it to last forever and ever. But this is 2000+ where things aren't expected to last longer than a few years.
sigh
The next site to slashdot will be ready soon, but subscribers can beat the rush and start slashdotting it early!
My suggestion is Tasker, but unless there's a mail parser plugin I haven't come across (or unless you write one), it won't take actions based on the content of e-mail messages. It will, however, react to SMS message content. So one way to handle your custom notifications is to write a script that runs on another always-on, always-connected machine. Have it receive and parse the e-mails and when one of them meets your criteria, have it send you a text message with relevant content, then have Tasker do whatever is appropriate when that message arrives.
To make sure your script-running server is up, use something like Ping HostMonitor. You can also use that to monitor the status of any Internet-accessible hosts.
The biggest downside of this approach is that it relies on SMS to reliably notify you. You might also want to have Tasker send an e-mail acknowledgement when you get the SMS, and have your script keep re-sending the texts periodically until it receives the ACK.
Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
I've done similar things, where I want my phone to tell me if some external activity has happened or has changed beyond certain parameters.
I do the analysis elsewhere, such as on that desktop PC, and the alert consists of sending a text message to the phone (or multiple phone numbers). Google for the how, it's a common practice and easy (and free) to do. Depends on the carrier, altho some sites claim to figure that out for you, but I just figure each one out and avoid them. this does mean that if a phone number changes carrier, I have to change the script, but since so far I have only sent texts to my own phone, it's no biggie. Just have one central script to send the actual alert.
Infuriate left and right
With a bluetooth keyboard and external display you could use your phone for dev, but I'd have to ask why. On the other hand, as an admin tool its great. I have often sshed into my home network to take care of one thing or another. For a professional sysadmin on call, scripting from the phone could will make the difference between needing to drive into the office on the weekend or not.
When all you have is a hammer, every problem starts to look like a thumb.
No.
The vast majority of the people is used to under thinking about everything.
Lisias@Earth.SolarSystem.OrionArm.MilkyWay.Local.Virgo.Universe.org
You probably won't get many recommendations for BlackBerry but a BlackBerry combined with a PlayBook may just be what you are looking for.
"A person is smart. People are dumb, panicky dangerous animals and you know it." - K
My brother uses a Milestone 2, and now and then he get himself doing some server administration over SSH while commuting on public transportation.
Of course it sucks, but it sucks less than trying to use a Pad or Notebook on that shitty bus seats. :-)
Lisias@Earth.SolarSystem.OrionArm.MilkyWay.Local.Virgo.Universe.org
A professional sysadmin on call should have multiple devices ready to roll, and not just depend on one dinky one.
There's a reason samurai had two swords, or cowboys carried a boot knife...
Android Scripting Environment is a layer that allows various scripting languages interact with the Android API. It supports a bunch of languages and allows for a decent level of control over the Android device. http://code.google.com/p/android-scripting/
I'd recommend a two-pronged approach, if you're looking for something user friendly and not requiring building an intermediate server.
First, check out the unbridled awesomeness that is If This Then That: http://ifttt.com/ It allows you to create simple (or complex) triggers based on all manner of inputs with all manner of outputs. Email, SMS, Social Networking, etc. I use it with a "private"(read: used only for this, and nothing actually private is tweeted) twitter account to pass data about. I originally used SMS, but I moved to twitter later as it's remarkably convenient and can be adapted easily to a number of different devices, whereas SMS is limited to phones (for the most part).
Then, on your sexy Android phone - I'm using a Note, personally, it's the closest I can get to a tablet but still be able to comfortably put it in a pocket - use Tasker to intercept and act.
Really, though, the first thing I'd do in your shoes is seriously investigate IFTTT. It's very easy to use and flat out awesome.
Meh.
Why would you want to run the script on your phone?
Of course there are apps for that.... but then why? Here is what I do. I use VPN (Cisco VPN is the one supported in most corporate environments, and is available on linux), and then just ssh to any machine I want.
There is talk of even remote desktop kind of client coming to android.
Alternatively, you could just ssh to the machine you want to access, and then do as you please.
I use a Galaxy note, and since the screen is 5", its very usable. However, on smaller phones(like my older optimus one from LG), such stuff was a pain.
So all your scripts will run on the server, in your lab, and email will be sent to you. Its far more easy to set up these scripts on the computer in your lab. Heck, you could write the scripts locally, and then ssh to your server and put them there.
But if you still want to do stuff like access email, parse through it, and then do something(ssh to server blah blah), you may as well write your own app. On the market, most such apps will do only a part of what you want.
Somebody has suggest N900(linux), and if you want everything on your phone, a linux phone is what you are looking for.
My Aurora : http://www.youtube.com/watch?v=o91ZsGwJYyg
FB : https://www.facebook.com/TanveersPhotography
Amidst the incoherent rambling I suspect, and look up to confirm yet again, that it is Timothy who has posted this trash. Is this the boss's son or something?
I object to power without constructive purpose. --Spock
Since you're on rogers: http://www.rogers.com/web/content/iphone4s
I suggest:
Prowl: For push notifications. It's free and you will find the perl script handy. There are some powershell ones floating around somewhere too. http://www.prowlapp.com/
Prompt: CLI. If you jailbreak (highly recommended) you can ssh to localhost, it's better than any Terminal app in cydia. http://itun.es/i624Jj
There are others but I never use them. My coworker and i opted for a home brewed app that handled a lot of our needs by phone in the event we had to be called about something off-hours.
Some soft keyboards have transparency, so can take most of the screen while you keep seeing what is below. And some have hard keyboards, some of them pretty good, or can use a bluetooth keyboard. The N900 is more a pocket computer than a cellphone, but could do work for what is needed (and was script friendly too)
Seems better to have a separate dedicated machine that runs the scripts and monitors everything and send email alerts that you can receive on your phone.
There's no place like ~/
How about a native (ARM) linux distribution. To name some (semi-)automated installation tools
Linux Installer
https://play.google.com/store/apps/details?id=com.galoula.LinuxInstall
Debian Kit
https://play.google.com/store/apps/details?id=org.dyndns.sven_ola.debian_kit
Complete Linux Installer (NEW)
https://play.google.com/store/apps/details?id=com.zpwebsites.linuxonandroid
It's not an inherent limitation of the device.
It's that the keyboards almost universally are horrible for it, because they are designed for things like natural speaking. Their processing of symbols is subpar.
The same is true of most small bluetooth keyboards, or built in keyboards. Frankly, my Zaurus SL-5500 from 2003 has a better keyboard on a mobile than almost anything that's come since. (And in fact, the only things I can think of that rival it that I have encountered, are also Zaurus devices.)
I have found one that I don't think sucks so far, it's "hacker's keyboard" on android. (Most important things it has that seemingly every other keyboard lacks are tab and arrow keys... easily accessible. It has some limitations though, and you'll almost certainly want to enable portrait 5-line keyboard) Though I usually use it more with my table as opposed to with my phone, though it does work there just fine, I use the phone more for email/texting/etc, so having a keyboard (swype) which is better for those things as default means the other isn't used as much.
Though I don't use it myself, notify my android looks very good. https://play.google.com/store/apps/details?id=com.usk.app.notifymyandroid&feature=search_result
Also, it integrates with tasker. And once you get tasker into the game, there's not much you can't do.
I think you're a little confused as to what "on-call" actually means. It is not regular work. You don't handle tickets, respond to emails or any of that. On-call is for emergencies, and it is typcially uncompensated. Your job is to respond if called. Otherwise you can do what you want. You are not by any means expected to stay sitting in your room hanging onto a laptop. Or if you are and you're not getting paid straight time for it, it's time to freshen up your resume.
Now that you understand what on-call is, if all you need to do is reset somebody's password or similar "emergency" and you can do that from your phone, then just do it and get on with life. Of course if you prefer to drive into the office instead then feel free.
When all you have is a hammer, every problem starts to look like a thumb.
I think you're a little confused as to what "on-call" actually means ... it is typcially uncompensated. Your job is to respond if called. Otherwise you can do what you want.
This must be some new meaning for "on call" with which I am unfamiliar. We pay our people to be on-call for specific off-hours periods, and that pay is by the on-call hour and in addition to their base salary. If they are actually called on, then they get yet another additional payment, depending on how long it took to address the issue. Those eligible for on-call duty are also free to decline any or all on-call duty, if they wish. We expect our people to remain sober and capable when on-call, even if they are attending social events such as parties. This has a price, as it should.
Which industry/country do you work in, where on-call time is free (and possibly compulsory and/or unlimited)?
Those who can make you believe absurdities can make you commit atrocities. - Voltaire
Yes, but this isn't an example of overthinking - he wants to invest a few hours of his time into saving hundreds of hours later down the line - that's a good thing. :)
I have no clue why everyone is rushing to have you put scripts on a smartphone, which can be lost, stolen, run out of battery...
You do your scripting on a PC at work, and only receive reports on, or do *emergency* remoting from, your phone. At most you tweak your phone so that if it receives an email/text with keyword "ALERT" from sender my.scripts.at.work, it does something noisy.
Any phone can do that, it's a matter of finding the right size/features balance. I'd go for a big screen, and maybe a hardware keyboard if you think you'll be doing a lot of remote editing, though the best phone keyboard is a lot worse than any laptop's, so don't plan on using it too much.
The Cloud - because you don't care if your apps and data are up in the air.
Rather than using the Phone to do the monitoring and polling, I'd consider using a service on the network at work and then make your phone a client of this service.
An example would be to use Nagios to do the monitoring and then use one of the countless Nagios Clients available to read the monitoring state from the service. You'll get the added bonus of knowing what happens if your Network coverage goes away to fill in the blanks after the event and be able to escalate to someone else if you're not available.
When people ask if I'm an optimist, I say "I hope so". --Bill Bailey
every salaried job, that's what!
I've never been offered extra money to take 'pager duty' (as it was historically called). I hated it, I won't willingly do it again but its still the norm to pay one annual salary and still expect lots of 'free time' from your slaves. I mean employees. I did mean employees, really I did.
--
"It is now safe to switch off your computer."
Oh yes. We at slashdot are so much smarter than the common pleb.
Give me a break. The only thing greater is the undeserved ego.
Nah. If you don't get too cocky about it, I think it's fine to be slightly proud to be a professional IT dude. ;)
Name me one professional rally racing team that doesn't install their own shocks on their brand new car.
If your needs are specific enough, no standard solution will suffice.
Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
If you're *really* going to go that route, though, why on earth wouldn't you use a tablet instead of a cell phone? Archos makes some 10" tablets in the $200-300 range which are extremely Linux-friendly. Ok, so the tablet itself is somewhat underpowered by current standards, but how many tablets have officially manufacturer-supported Linux images (debian-based in this case) you can install in place of the Android that ships from the factory without voiding your warranty?
Tether the tablet to your cell phone via wifi, if you really want to brag about doing it via cell phone, but use the right tool for the job. I've done SSH from my cell phone as well, but I've never actually *written* a script over the cell phone, just called a script that's already written or done a reboot. If you need to do anything more complex than that, then you should be able to get your hands on a laptop or in a pinch, a tablet. (admittedly, I'm probably in a different demographic than you, in that it's socially acceptable for me to carry a purse with enough space for a tablet, but even a 7" tablet would be a better platform for the work than a cell phone).
Besides... I dunno about you, but usually I can't even hear my cell phone at a party, and that's assuming it's even turned on in the first place.
A professional sysadmin on call should have multiple devices ready to roll, and not just depend on one dinky one.
There's a reason samurai had two swords, or cowboys carried a boot knife...
Exactly ... just in case they needed to stab a server ... or a user. ;-)
Maybe you missed the part where they said "looking forward to not trucking my laptop around everywhere"
A cell phone fits in the pocket. A tablet does not. He'd just be lugging around something lighter. I believe his goal is to not be lugging anything extra around.
Never trust an atom. They make up everything.
Which industry/country do you work in, where on-call time is free (and possibly compulsory and/or unlimited)?
The United States of America. Pick an industry - it probably applies.
but it sucks less than trying to use a Pad or Notebook on that shitty bus seats.
I suggest using toilet paper on shitty seats. Using a Pad or Notebook is gonna hammer the resale price.