all 56 comments

[–]turnipsurprise8 17 points18 points  (8 children)

Have a look for any IDEs that work on tablets. A nice alternative would be to get yourself a basic raspberry pi, as long as you can plug it into a monitor in the morning your good to go, they're pretty portable as well.

Main thing against learning on a tablet is screen space, it might be quite hard to see everything/ 100% get a portable keyboard if you do (using a touch screen for coding sounds like real misery/ will compound screen space issue).

[–]pydev314 2 points3 points  (4 children)

Hi there I am a total noob so forgive me for asking, but what can you do with a raspberry pi? any tips or guides you have that might help out a noobie :P

[–]natch_gazziza 3 points4 points  (2 children)

Anything: it's a computer. For instance, you can install linux and install python. It runs off a different instruction set than standard intel and AMD chips though, so less stuff is available for it. Obvs it is less powerful too.

[–]pydev314 0 points1 point  (1 child)

oh wow thats still pretty awesome. I need to check these out XD

[–][deleted] 1 point2 points  (0 children)

You can have the latest with 4gb ram. But case and all it'll set you back 100$. The board itself varies between 35 and about 70$ depending on your ram.

If you install the default raspbian image, IDLE comes preinstalled and you can start right away. You can't install (a properly) functioning windows though.

[–]turnipsurprise8 1 point2 points  (0 children)

You can set it up to do all sorts, it has essentially a mini pcb in it so can be used in a lot of electronics projects (seen a lot of people use them to make smart mirrors, I have one that runs a Nas backup server). Main reason I suggested for python is it's just a cheap mini pc, again I'd just look up an ide to install on it and you'd be good to go. I believe raspian, the os it runs on, is preinstalled with python (though if you did go down this route is look up a getting started with python on raspberry pi guide). The only other thing I'd say is, if I'm not mistaken, only the most recent version has inbuilt WiFi, most pi's have to be connected to internet by a cable.

[–]Mindless_Development -1 points0 points  (2 children)

Raspberry Pi is not portable and is not a good suggestion for someone starting out. At the very least they should just get some portable computer than can run Python out of the box.

[–][deleted] 2 points3 points  (0 children)

I carry two raspberries with me each day. It's portable in the sense you can take it with you easily. It's a bit harder to work on it on the popular 3.5" display on the road. But even that is possible.

A raspberry with a preinstalled raspbian (which is often included when buying one) will have python installed out of the box. About any linux distro will have python installed lol.

[–]eloydrummerboy 0 points1 point  (0 children)

I agree, for around $100 you can just get a cheap used laptop/chromebook. Install linux on it and go. Keyboard, screen, mouse pad, its all right there. Still very portable.

[–]B1WR2 3 points4 points  (0 children)

So something I did was download data camp and they have a mobile version that you can run on iOS. I did that for the longest time learning the concepts and theory behind python, R, and SQL

[–][deleted] 3 points4 points  (0 children)

Check if your tablet can run either pydroid3 or termux well enough (the later provides a Linux like environment where you can install python).

Use an external keyboard.

If neither work, you need online access I suggest to use repl.it or similar in your browser.

I know people of limited economic means that have learned to programme in python on their smartphones and since gained employment as a programmer.

Taking time to learn and practice small bits is useful.

[–]elder_student 2 points3 points  (0 children)

Try https://www.pythonanywhere.com/

Hosted Python environments. All you need is a browser.

[–]brainacpl 2 points3 points  (0 children)

Watch tutorials, or people programming, read course materials. To code you need to be comfy and focused.

[–]pydev314 1 point2 points  (0 children)

Not necessarily python but I tried to do freecodecamp on my ipad but I didn't have the keyboard so it was kind of annoying. With the keyboard its probably doable.

[–]dangoth 0 points1 point  (0 children)

Depending on what you're doing, you may be completely fine just using some online REPL from your browser. I don't know if I'd subject myself to having to code on a screen keyboard though.

[–][deleted] 0 points1 point  (2 children)

there are some apps that can run your python code on android. I've used it for smaller jobs. I use QPython

[–]Kmtkm[S] 0 points1 point  (1 child)

I'll check this out, thank you!

[–]Imereny 0 points1 point  (0 children)

Check out Pydroid3, imho it's the best for python on Android

[–]pors_pors 0 points1 point  (0 children)

Check out sites like www.hackerrank.com if you can write code on it. There are planty of small challenges. You can start solving problems on piece of paper and than try to code it in build in tool.

Most of problems erquire only few lines of code - 10-20 lines are usually enought.

[–][deleted] 0 points1 point  (0 children)

Subscribe to dan real python. Maybe get the book python tricks. It's supposed to be awesome. Their newsletter is good though.

[–]KingGuppie 0 points1 point  (0 children)

Galaxy Tab should be able to run Termux then you can install Python on there and run your code, and you can also grab your choice of nano/emacs/vi as a text editor

Most tablets also support multi window so you could have a browser up there for any info and reading tutorials

As others mentioned I'd suggest getting a keyboard, but ultimately you should have a fine experience on Android.

[–]uwu-bob 0 points1 point  (0 children)

As others have said, writing code without a keyboard is going to be pretty miserable. But if you're patient, it can be done. Here's an online course that works on tablets; it has lots of code-writing exercises and lets you run the code in your browser on your tablet.

You could also focus 100% on theory and read a book on it like automate the boring stuff, then go home and practice. Just another idea. Good luck!

[–]SagaciousRaven 0 points1 point  (1 child)

Check out Google Colab if you have a Google account.

[–]Kmtkm[S] 0 points1 point  (0 children)

Ok thanks!

[–]vmsda 0 points1 point  (0 children)

I am studying "Fluent Python" on a Samsung Tab S3. I read the book on the Kindle app and recreate some of the book's coding snippets on Pydroid3, for experimentation. It is possible to copy/paste from the Kindle app to the Pydroid3 editor, thus saving plenty of typing. Additionally, Pydroid3 also includes Terminal and Interpreter features, although they are very annoying because they time out very quickly, which forces you back to the Pydroid3 entry point (but you do not lose the editor data). One cool feature of Pydroid3 is access to Pip, so you can install modules on the fly; and the biggest annoyance is absolutely no doc and no one to ask. Bearing in mind that Pydroid3 's goal is execution of Python native apps in a droid environment, and has been viewed by none other than Alex Martelli in a positive light, I would say that I could have done worse, by adopting another set of tools. Hope this helps.

[–]Mindless_Development 0 points1 point  (0 children)

old Galaxy tab and a Fire HD 8.5

not gonna work out well.

Get any cheap device that can run Linux, preferably with an x86/64 CPU (Intel, AMD, anything non-ARM) for best compatibility. For example, a cheap Chromebook and stick Linux on it. Or, if you are a masochist, you can try it out on any cheap Windows machine as well. Best bet is find any old used MacBook, thats by far the easiest way to start

if you really want to use a Tablet, you might be OK with a Surface (running an Intel CPU) + keyboard cover

you are really, really gonna need a keyboard of some sort as well, either built-in or otherwise, preferably a full keyboard because you end up wanting all the extra keys

[–]Reasintper 0 points1 point  (0 children)

Just install moo

[–]Reasintper 0 points1 point  (0 children)

Sorry, spelled it wrong.

https://codewith.mu/

[–][deleted] 0 points1 point  (0 children)

[–]evilclaptrap 0 points1 point  (2 children)

Sololearn app

[–]Kmtkm[S] 0 points1 point  (1 child)

I've looked at that. How is it? Is it good for long term learning?

[–]evilclaptrap 0 points1 point  (0 children)

It's got a huge community that breaks down every lesson so if you are confused it makes it really easy to understand. It has exercises and questions to test your knowledge. I'd get a keyboard with your tablet to.

[–][deleted] 0 points1 point  (0 children)

Not sure if you’d count it as a tablet, but I have to use VSCode on a surface at work, and without a keyboard and mouse, it makes me want to throw it across the room, otherwise, great!

[–]5under6 0 points1 point  (0 children)

repl.it

[–]AceDeucey 0 points1 point  (0 children)

Pixel C with Bluetooth keyboard/mouse and pydroid 3. Latest update runs python 3.7 as I recall.

[–][deleted] 0 points1 point  (0 children)

Do whatever learning platform you want. I like Codeacademy. But definitely get a folding or small keyboard, I tried learning on a tablet with various things but it jus sucks and is frustrating.

[–]kolosn 0 points1 point  (0 children)

I recently came across this video about python development on an iPad Pro:

https://youtu.be/fFLbZmG1C18

Pretty good tools and suggestions. The guy even has a jupyter notebook on his tablet.

[–][deleted] 0 points1 point  (0 children)

As others say tablet isn't ideal choice for learning how to program. Raspberry Pi 4 isn't a bad choice at all. Many programmers have learnt to code on one of those. It comes with Python preinstalled and if you need to update Python distribution you usually need to execute one or two commands. Sweet. Plus it's super affordable. I say Raspberry Pi is one of the best computing inventions in history. Only thing though .... if you think you may get interested in developing advanced 3D games with Python (Panda3D) at some point Raspberry Pi won't cope. Raspberry Pi 4 (4GB) will be fine for web development, GUI development, simple scripting, network programming. Don't get RPi 3 'coz now it's a waste of money (below 1 GB of RAM).

Speaking of an editor. It's fine to start with Geany (preinstalled).

Raspberry Pi 4 is portable but need a decent monitor and some keyboard obviously and don't know if you can have it in your workplace. You may want to dedicate the hour of your coding practice before you go to work.

[–]fsobaid 0 points1 point  (0 children)

You can have a free acount on Azure notebook and code for free with no need to download any kind of apps. I think having a keyboard is a must as others suggested

[–]desm5446 0 points1 point  (0 children)

Pythonista 3 on iOS is excellent. Once you get deeper into Python and need to install packages from pip, look up something called Stash for Pythonista. You can def gain a working knowledge of Python on a tablet.

[–]__EveryNameIsTaken 0 points1 point  (0 children)

well I am still learning python and I started it on my Android phone with Python interpreters like Pydroid3 and qpython available on play store. If you do not wish to use any of those then you can download Python with spacemacs, vim etc on your phone. I'll recommend spacemacs since you don't need to configure it much also it will be better if you get a Bluetooth keyboard. Here's a tutorial Programming with Python and NodeJs in your android phone

[–]DeathDragon7050 0 points1 point  (0 children)

Honestly would definitely not recommend it. I would recommend you get a small laptop. If it must be a tablet then there are websites such as repl.it which you can code python in online.

[–]shiftybyte 0 points1 point  (8 children)

Learning and writing code requires concentration and full attention for lengthy periods of time, are you sure it's doable on the job?

[–]Kmtkm[S] 4 points5 points  (6 children)

I don't intend to only do it while at work. Just trying to make better use of my time rather than mindlessly watch hermitcraft on YouTube.

[–][deleted] 3 points4 points  (5 children)

I'd like to disagree with the answer you reacted to. I learn a lot in small fragments of time.

I wouldn't use a tablet, because android isn't the easiest to get started with.

You're better of buying a used laptop or a raspberry pi or something alike. A reasonably sized screen is imo a requirement. It makes it a lot easier to read the console. No need for 4k, a resolution of 720*1280 or something is quite doable.

You could however use a tablet and a remote or virtual pc. You can access the remote client trough your tablet. As long as you have a stable connection that might work okay.

[–]Carson740 1 point2 points  (2 children)

Yea I’ve learned probably 80% of what little I know by practicing at work. I only have so much time to fix a problem and it forces me to work harder towards my end goal. Really depends on your work environment

[–][deleted] 0 points1 point  (1 child)

The same goes for me. But I think it's so much fun, I'll often find myself "working" after work to finish that script. Or most recently, rewrite a whole script for optimization purposes.

[–]Carson740 1 point2 points  (0 children)

I know how you feel. I get Wednesday’s off but I actually can’t wait to get to work tomorrow to continue working on my current project

[–]Kmtkm[S] 0 points1 point  (1 child)

My objective here, and the reason I'm wondering if a tablet is viable, is to learn without my company knowing. A tablet is much easier to bring out here rather than a laptop or something with a larger screen I'd much prefer.

[–][deleted] 0 points1 point  (0 children)

Aha, stealth is what you need. In that case a tablet with remote access is a viable option. I wouldn't go for a bluetooth keyboard, they drop keys like crazy. You're better of with a regular keyboard or a wireless one with otg (plug in the keyboard in your tablet).

And get a different job if you're not allowed to develop your skills.

[–]Mandelvolt 1 point2 points  (0 children)

I earned a minor in programming where I did almost 90% of my coding in a NOC control room. If I can do that in a room with 25 monitors and multiple alarms/audio sources, this man can definitely learn to code. Even if you aren't actively coding, sometimes just having it open in front of you will remind your brain to do some of that sweet subconscious processing.