Be advised; this thread is not for serious in depth discussion of weighty topics (we have a link for that), this thread is not for anything Culture War related. This thread is for Fun. You got jokes? Share 'em. You got silly questions? Ask 'em.
- 53
- 7
What is this place?
This website is a place for people who want to move past shady thinking and test their ideas in a
court of people who don't all share the same biases. Our goal is to
optimize for light, not heat; this is a group effort, and all commentators are asked to do their part.
The weekly Culture War threads host the most
controversial topics and are the most visible aspect of The Motte. However, many other topics are
appropriate here. We encourage people to post anything related to science, politics, or philosophy;
if in doubt, post!
Check out The Vault for an archive of old quality posts.
You are encouraged to crosspost these elsewhere.
Why are you called The Motte?
A motte is a stone keep on a raised earthwork common in early medieval fortifications. More pertinently,
it's an element in a rhetorical move called a "Motte-and-Bailey",
originally identified by
philosopher Nicholas Shackel. It describes the tendency in discourse for people to move from a controversial
but high value claim to a defensible but less exciting one upon any resistance to the former. He likens
this to the medieval fortification, where a desirable land (the bailey) is abandoned when in danger for
the more easily defended motte. In Shackel's words, "The Motte represents the defensible but undesired
propositions to which one retreats when hard pressed."
On The Motte, always attempt to remain inside your defensible territory, even if you are not being pressed.
New post guidelines
If you're posting something that isn't related to the culture war, we encourage you to post a thread for it.
A submission statement is highly appreciated, but isn't necessary for text posts or links to largely-text posts
such as blogs or news articles; if we're unsure of the value of your post, we might remove it until you add a
submission statement. A submission statement is required for non-text sources (videos, podcasts, images).
Culture war posts go in the culture war thread; all links must either include a submission statement or
significant commentary. Bare links without those will be removed.
If in doubt, please post it!
Rules
- Courtesy
- Content
- Engagement
- When disagreeing with someone, state your objections explicitly.
- Proactively provide evidence in proportion to how partisan and inflammatory your claim might be.
- Accept temporary bans as a time-out, and don't attempt to rejoin the conversation until it's lifted.
- Don't attempt to build consensus or enforce ideological conformity.
- Write like everyone is reading and you want them to be included in the discussion.
- The Wildcard Rule
- The Metarule
Jump in the discussion.
No email address required.
Notes -
Since you are a physics student I will make you a suggestion that should be close to home. Lofty demonstrations of algorithmic beauty won't faze someone who doesn't naturally find programming and CS interesting.
Ever thought solving long equations were a bitch (lol)? Play around with SymPy. It's a python package for symbolic manipulation. Check out the link to the video above, it's by a physics student showing you how to use SymPy to solve common physics equations and some of them are extremely difficult if not impossible to solve by hand. The sheer usefulness of it speaks for itself. You can solve the equation, plot it, solve a 1000 different variations of it, generate LaTeX renderings of it, "lambdify" it and put it into production, and so much more with TRIVIAL amounts of effort.
And don't get spooked by syntax/idioms you don't understand quite yet. As an Electrical Engineer who had to hand solve his fair share of Maxwells Equations, Take Fourier/Laplace transforms and solve some retardedly long control systems problems, letting the computer do all the hard work so that you can focus on the larger task at hand is a blessing of the likes a student might not even appreciate yet. Ain't nobody got time to hand solve shit, we have computers for a reason. Programming is not harder than Physics, do not be scared.
In an ideal world you should probably be a decent enough python programmer or programmer in general before using specialized packages because otherwise, you will stumble against the language itself. But in your case let's hope the reverse works out. You might find SymPy so useful that you venture out into other programming use cases.
For those wondering, why not just recommend MATLAB since it comes "built-in" with symbolic manipulation and a whole host of other things a physicist might find useful? Well... FUCK MATLAB that's why.
And what do programmers do? Come on man, you are typing this out on a fucking website, which didn't appear out of thin air. Just look around you.
I've been trying to get this point across to some of my coworkers. A few don't get it.
I had a PhD advisor who used to make me prototype things I wanted to do with python (which I am very good at) in Matlab so he could understand what I was doing. One of the most frustrating months of my life (and part of the reason I quit!).
Also fuck matlab
More options
Context Copy link
What have you been saying exactly?
We aren't real software devs. We are engineers who need to process a lot of simulated and measured data. Half of us use python and half use matlab.
I try to say that python is in every way more capable than matlab and not locked behind a paid license. If you had to extend a script to include automation or something, python is ready for you. It is also free so if you had to put your scripts on one of the off network Linux machines in the lab, python would work just fine.
Using python in Spyder has all the benefits of matlab, for people who love that UI. Which I actually really do. But now I have a free portable version of my code that isn't locked behind a matlab license. Why are we paying them and locking our code out of the lab computers when the free and more capable alternative exists? It isn't like we are using LabView or some other matlab specific tool.
But these people are used to matlab and so half the time when I get someone else's code it is matlab. And so half the time I get to code in matlab. And the other teams use python almost exclusively, so it is just us leaning hard on matlab for no reason.
I won't even bother complaining about matlab's actual flaws here. Indexing from 1. Running out of memory when dealing with moderately large data sets, requiring lots of needless clearing of variables or matlab specific workarounds to their memory limitation bullshit that has nothing to do with hardware limitations. Hiding basic functionality behind paid toolboxes that each need a different license. Etc. Etc.
Also I never figured out if Matlab even has a real debugger. Being able to just %debug is so ridiculously useful
You can set break points in functions and scripts. Just click to the left of a line of code by the line numbers. Run it and it will enter debugging mode. Variables usually hidden in functions will be displayed on the open variables plane.That works fine for debugging in my non-professional-software-dev experience.
More options
Context Copy link
More options
Context Copy link
The indexing from one thing aways pissed me off so much (what’s worse is that is trying to keep this straight when using Matlab to do signals processing since it’s obvious that Matlab Fourier transform functions are wrapped C or some other real language)
More options
Context Copy link
Sounds like gridlock to me. Matlab is well entrenched in engineering enough that you are going to have a tremendously difficult time convincing anyone to get off it unless some other tool does that same thing SIGNIFICANTLY better accounting for the preference for Matlab.
Your best course of action, even though it may be an underhanded move is if you can convince the higher-ups that there are significant cost savings by not paying for the license.
And unless you are using Simulink or doing some heavy control system modeling, I think that is going to be an easy case to make. The python scientific suite (NumPy, SciPy, SymPy, Matplotlib) APIs are all designed for people coming from Matlab. So adoption costs should be fairly minimal.
If you really want to be a sociopath, I would choose a project that would be impossible to do in Matlab but a cakewalk in python; think some combination of deep learning that interfaces with multiple web apps.
More options
Context Copy link
More options
Context Copy link
More options
Context Copy link
More options
Context Copy link
I had this question when I was picking my university. "Looking around you" doesn't work if you want to know what programmers do on a day to day basis. I'd want to know what my average day at work would look like.
A lot of students suffer from a form of analysis paralysis about what a jobs day to day activities actually are. You can tell them straight in their face and show them exactly what's getting done, but that revelation doesn't materialize in their head.
I think with programmers it's the least opaque, they program! There are many large open-source projects out there, their daily job would amount to maintaining and expanding a similar codebase (with a lot of bureaucracy thrown in). I would have answered OP differently if he was picking his university, not having already done two programming courses.
More options
Context Copy link
More options
Context Copy link
More options
Context Copy link