[ Rules / FAQ ] [ meta / b / media / img / feels / hb / x ]

/b/ - Random


*Text* => Text

**Text** => Text

***Text*** => Text

[spoiler]Text[/spoiler] => Text

Direct Link
Options NSFW image
Sage (thread won't be bumped)

Use REPORTS. Posting 'Mods pls' achieves nothing.
News: /cgl/ has been merged with /hb/.
Please read the rules! Last update: 01/18/2019


Anonymous 33036

Should I buy one??? I want to learn some programming stuff and maybe make some stuff?? idk yet??? is this a good place to start or just a meme (i do not have much money if that helps)

Anonymous 33043

You would probably be better served asking on lainchan or arisuchan.

Anonymous 33047

Hhhhh, thanks I'll try that

Anonymous 33050

Depends on how much experience you have and what your main interest is. Arduinos have a lot of newbie guides and work for intro to embedded systems/ hardware control. A pi is a functioning computer, so it can do a lot more, which could be overwhelming. Go look at adafruit, it is a good company that sells products and teaches you how to use them. They even have little product tutorials.

Anonymous 33082

Rpi is a good way to learn linux and actually do things with a programming language. You get a bread board with break out pins and you can do anything you want to if you can learn basic python.

I'm using them as green house monitors and irrigation controllers that can be accessed through the internet with live feed cameras.

Anonymous 33085

If you get bored of it, just set it up as a Pi-hole to block ads.

Anonymous 33087

>I want to learn some programming
If you just want to learn programming use your own pc/laptop.
If you are using windows/mac and think you need linux you can just run linux in virtualbox.
Raspberry pi would be good start if you wanted to do some projects with sensors that do not have usb but used GPIO pins.

Anonymous 33119

I think there's better ways to learn, like taking a class or doing 30 days of code on hackerrank. They go through the basics in videos and have a discussion tab where people look for advice or the entire solution. I would start with python or Java.

Anonymous 33199

You're not wrong but I'd love it if this kind of discussion could flourish here. I've left certain programming/hardware forums for being gross sausage fests and I'd love to discuss these topics in a female oriented space.

OP, if programming is your main focus I'd second the suggestions to take a free online course, especially considering the money aspect. It's not necessarily expensive to start but it can add up depending on where you go with it. If the physical aspect really appeals to you then I say go for it but do a little prep work first. Look look up a couple of tutorials that appeal to you but also have a financially manageable (or hopefully overlapping) parts list. So long as you plan accordingly, you can avoid soldering and easily reuse all your parts. If you post the projects you're interested in making we can help you figure this stuff out, or if you're not sure what projects you'd be interested in you can tell us a little about your interests and we can suggest good beginner projects.

You might also want to look into other boards that are cheaper and more affordable. I got a pack of 10 Arduino Trinket knock offs for $15, they're not as powerful as a Pi but you can still do a lot with a little creativity, and the fact that they're so cheap makes the occasional screw up okay. They can also be useful if you want to make more preeminent projects since they're so small and cheap I can tuck them into a bunch of places and easily conceal them.

Anonymous 33228

I think there’s a women Linux users IRC.

Anonymous 33348

Why do people never want to have these conversations here?

Anonymous 33373

insecurity and fear that anonymous /g/ kids will start laughing at them.

raspberry is a great tool, if you are motivated go ahead.
Its a weird place to start but you will learn a shit tone of things if you figure it out, i actually think its a fun idea.

Anonymous 33393

everyone laughs and insults each other on /g/ though

Anonymous 33409

you are unfortunately, thousands of centuries early

Anonymous 33831


You said
> How did you get started on the "make something neat" part?
> I can only make useless academic-like stuff or baby-tier fun stuff.

You are at a cross roads. There are many choices for interesting projects in advanced subjects. What you choose is up to you.
I would consider what you are interested in, as well as what you already know and what you are willing to learn.
Here are just a few of them.
1) Learn and study code optimization.
Not exactly relevant for everyone but for some niche jobs, often important jobs - like working as a software dev at somewhere like Google - where there are large scale servers or super computers - or for specialized contexts that you might find in the defense industry - it will be relavent.

Going down this path involves learning a lot of additional theory - as you go deeper, it can be mathematically complicated — like optimizing execution time for computation heavy stuff like machine learning algorithms or advanced signal processing algorithms for real-time sensor fusion.

2) Get a raspberry pi or similar electronic sets. Get some motors, sensors, etc. maybe a used/old FPGA if you have cash and time.
You can find some of this stuff for free at a university but you can’t take it out of the lab. Otherwise consider buying it used on a site like Amazon or eBay. If you want to go full cyberpunk — try scavenging parts from broken or obsolete machines. Then build stuff - anything really. This is the hobby electronics/robotics route.

Fun, cool, interesting career options, and somewhat beginner friendly. There are a lot of good tutorials online for this.
Getting into the finer points of it will likely require you to learn about some basic electrical engineering theory, enough knowledge of hardware to cobble stuff together.
If you want to go far - like highly coordinated movement, maintaining stabilizing in turbulent conditions, high speed navigation, etc. you will have to get out the math textbooks again - physics and control theory - possibly signal processing. But that’s for building your own drone aircraft or fully autonomous vehicles, or other fancy stuff.

C) Cybersecurity/Hacker Route.
Learn about the fine details of computers and programming. N.B. — you can’t learn hacking directly perse.
Rather you learn the ins and outs of computers so throughly you can find mistakes in the design, which you use to bypass or subvert security boundaries.
This means learning a lot about topics like Assembly code - basics of hardware architecture (at a conceptual level) - code obfuscation, becoming a master of disassembly and debugging, learning about how operating systems work in detail, analyzing code from executable binaries, and learning how to use the “cyberanalyst’s toolset” : different specialized types of debuggers - different tools for running virtual machines and sand boxing.

Advanced topics include side channel attacks - networks and communication protocols - and cryptography (digital signatures, secure hashes, cryptographic algorithms and various attacks against them).

I only have a limited knowledge of this stuff and it gets intensely technical.
There are great employment options if you really master this stuff.
Get payed hundred of thousands USD to help protect corporate giants from Nation-State hacker groups.
Work in the highest levels of your countries Intelligence Services to steal valuable secrets from hostile nations or hunt down Pedos, Terrorists & Organized Crime.
Hack the Gibson and become 1337.

D) Back End Web applications and Database stuff.
Be careful - this stuff might become mostly automated in the near future at which point you will be a lot less valuable. It’s already happening to some degree.
Beyond that, it pays well but it’s painfully boring, at least from my experience. You can get into to some interesting theory about database design- optimize for different aspect of performance or storage, but… I never found it compelling.
I would pass on this.

E) Data Analysis / AI / Etc.

This is the Math route - learn lots of theoretical math / statistics and eventually become a master of machine learning and other fancy algorithm stuff. You would greatly benefit from learning B.D. level statistics if you want to teach yourself.
There are 2 major pitfalls here that make me tear my hair out in frustration.

Virtually anybody can learn machine learning at a basic level. Many programmers/engineers/scientists will learn about it at a intermediate level. But the enthusiast/casual learner bs only goes so far.
If you wanna work with the cool kids, on the hottest projects, in the top places, getting payed the big bucks - then focus on mastery of relevant math/stat theory. It’s a long term goal.
This is hard for many - myself included. So we try to get by learning as little as possible.
That means trial and error, rules of thumb, google-fu, and applying new techniques based on someone’s recommendation without pausing to ask why. You will hit a brick wall when you attempt to apply what you “learned” in a career setting.

Pet Peeve #2
Because there is so much hype and no academic body to standardize terminology and curriculum — corporations and “gurus” are inventing bs buzzwords that mislead newcomers and rebrand old math as their own state-of-the-art arcane inventions.

Avoid this by starting with the basics.
Try to work through an intermediate level statistics textbook.
You’ll want at least the theory behind the hypothesis testing, tolerance tests, moment generator functions, and theory about “estimators”. Ideally - ANOVA, basic clustering theory, markov chains, and maybe some basic information theory. Also consider covering multi variable calculus. If you are an overachiever/math whiz - introductory abstract algebra/real analysis will be quite valuable as well. (Although I haven’t covered it yet myself)

Avoid random internet guides/tutorials. I cannot emphasize that enough. You will waste time doing activities that give you the impression that you are learning quickly but actually it’s just oversimplified concepts and misleading explanations.
All of it you will have to “unlearn” later.

If you want to learn some good quality, beginner friendly introductory material without jumping into directly into math textbooks - I recommend Khan Academy, 3Brown1Blue on YouTube, and legitimate academic resources like MIT OpenCourseWare, Coursera, etc.
Other stuff is generally rubbish and should be treated with intense skepticism.

If you spend a few years studying patiently, without rushing or cutting corners, that’s when you rise high enough above the trend-chasing masses that you can stand out and make a worthwhile career out of it.

F) The interdisciplinary STEM path.
Learn about a STEM field and write useful software based on that knowledge - like simulations and other sorts of numerical analysis tools.

I myself like this idea and occasionally sketch out ideas for small simulation projects - I have one that I am currently working on. I will post an overview of it below to give you a sense of the process that goes into it.

G) Network specialist
I would like to say more about this field - but I myself do not know all that much about it as I haven’t covered it yet in my curriculum - so my knowledge is just some general concepts.
Stayed tuned for future developments.

Anonymous 33832

I will probably start working with raspberry Pi 3 tomorrow (I have my own).
It seems to be a good thing to get into embedded and system programming since you can install any Linux based OS on it.
It is also not that easy like programming for MCU.

Also I would really recommend you not to use Arduino and go on STM. They have really good Hardware Abstract Libraries, that allow you to create projects on any STM controller series at once.

Anonymous 33835

Thank you for such a detailed response!
>What is the extent of your knowledge in Math, Statistics, and the STEM fields?
1st year student at a community college in the US. Calculus is split into three courses and I am finishing the second one. 0 knowledge about statistics and STEM fields.
>What programming languages do you know, and what sorts of topics have you covered? What sorts of projects have you finished?
I mainly know C++ and Java, C++ is taught in the school and I rewrite my school projects in Java for practice. Currently I am in a data structures class and we have covered things like BSTs and recursion for the most part. For projects I finished, what I meant by "baby-tier fun stuff" is hangman, a VN in Ren'Py, and an ugly website. Most projects I start and never finish because I get frustrated trying to learn something new. I am using "random internet guides/tutorials" for the most part when I do this.

From what you described Cybersecurity sounds most appealing, I like searching for flaws in things. I was considering getting a Raspberry Pi in the future since the tutorials make it seem doable. I will keep in mind everything else you mentioned, but it sounds very advanced. I will probably focus more on statistics and math as well.

Anonymous 33868

You don't learn programming with a Pi. It's better to think of it like a small highly customisable computer.
If you want to learn programming with some real life application, and are willing to make a small investment, buy an Arduino and some electrical components. You can even get sets on Amazon for around £50 that include an Arduino Uno (the most widely used model) with some components for projects.
Not only does this teach you a variant of the C language (easily the superior language to learn if you want to really learn programming) it keeps you involved by linking programming with real life applications.

Anonymous 33869

Listen, don't both with those things. Way too much politics, way too little actual stuff about computing or programming. On top of that, they're stuffed with transexuals who, if they sniff out that you're a real woman, will act just like any man would do around you.

Ignore that, just get some books - Kerrigan and Ritchie, work through that - and ask questions here, on 4chan's /g/, lainchan or arisuchan.

Anonymous 33873

>Do you have any tips for cybersecurity anon?
Sorry, I don't. It's not something that I've ever look in beyond how algorithm design applies to it as well as some cryptography puzzles, but that's it. lainchan is best option for that, I think they have a thread on that currently up on the lambda board.

Anonymous 33876

Yes, but you barely learn anything. Programming on Arduino is very far from embedded programming of monoboard computers like Pi3 and MCUs. Let alone applications for gui, Web, gamedew, and so on.

Anonymous 33914

I thought /g/ was just filled with people making basic PC hardware threads which have less depth/sophistication than the average linustechtip video.

Same goes with /biz/ 10% of the userbase may be sophisticated "pwoofesheenals" in the field, but their posts are swamped by the 90% of users who are little better than their reddit counterparts.

Im just untrustworthy of chan culture in general to rely on high-iq discourse. Would rather even go to quora

Anonymous 33916

Unless you're making a robot or doing some hardware engineering, a regular computer running GNU/Linux would be better for leaning programming.

Anonymous 33980

Eh, I sorta agree but mostly don't. You can definitely write some real software using arduinos and practice useful techniques that carry over to other software fields BUT over all the arduino specific content you find on the web is very spoon-fed-beginner based and isn't about teaching you foundational skills as much as it is about getting you through the project. It's understandable given that usually when people pick arduinos up for the first time there's a lot of new stuff over a variety of fields to cover all at once, but if OP is interested in both learning programming and doing some physical projects, then it's not a bad idea to try it out so long as they're mindful that they can't rely on ardunio tutorials alone for the programming aspect since most arduino tutorials are for beginners and they will outgrow them very quickly. If their first priority is JUST programming or JUST electronics then I agree they should pick something else, but I don't think it's bad to pick something for its fun factor versus picking something purely for it's educational value. Fun can be very motivating, I've written GUIs and web apps to interface with my arduino projects, and I hope to make a game with a physical aspect eventually. Obviously these aren't pure arduino skills, but having fun with my arduino motivated to make bigger and better projects that ended up using those skills. To be clear I didn't learn basic programming just for arduino. I already knew how to program before hand and doing arduino stuff helped me expand my skills but didn't teach me the basics. What I'm getting at is that I feel that someone having an entry point to learning that genuinely interests them is really valuable, and to that end there is value in learning with an arduino if its something that really interests someone.

Anonymous 34029


If you just want to learn programming, you don't need a raspi at all. I'd start with setting up a Linux Dualboot on your PC and looking into Python or C.
https://www.codewars.com/ is a really neat website that features tons of programming exercises of different difficulties.

Depending on where you live, there might be some free programming workshops aimed at women. Since those usually don't require any previous knowledge (and show you how to set up a work environment), they are a good place to get you started.

I've found that reading programming related communities (even if they are 90% shitposting) is insanely motivating.
lainchan, arisuchan, and /r/girlsgonewired are cool, and joining some IRC channels pays off as well.
/g/ was nice a few years ago, but I wouldn't recommend it anymore.

Do you gals have any programming-related communities you like?

Anonymous 34492


So what did you end up doing, OP?

[Return] [Catalog]
[ Rules / FAQ ] [ meta / b / media / img / feels / hb / x ]