Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "theoretical"
-
!rant
*Theoretical computer scientist is at an interview.*
Interviewer: “Imagine that you are walking down a road and see a house on fire. What do you do?”
CS Guy: “I dial the police and tell them that the house is on fire.”
Interviewer: “Good. Now, imagine that you are walking down the same road, and you see that the same house is not on fire. What do you do?”
CS Guy: *Ponders for a little while.* “I put the house on fire and reduce it to a problem I’ve solved before.”10 -
*Theoretical computer scientist is at an interview.*
Interviewer: “Imagine that you are walking down a road and see a house on fire. What do you do?”
CS Guy: “I dial the police and tell them that the house is on fire.”
Interviewer: “Good. Now, imagine that you are walking down the same road, and you see that the same house is not on fire. What do you do?”
CS Guy: *Ponders for a little while.* “I put the house on fire, thus reducing it to a problem I’ve solved before.”2 -
PSA: An exclamation point is not devRant's version of a hashtag. It means 'not,' as in != means 'not equals.' So when you type '!rant' and it's a rant, you're creating a theoretical assertion error.
Let's all do our part to keep devRant theoretical error free! 👍😁 *Cheesy music*10 -
5 Types Of Programmers
1.The duct tape programmer
The code may not be pretty, but damnit, it works!
This guy is the foundation of your company. When something goes wrong he will fix it fast and in a way that won’t break again. Of course he doesn’t care about how it looks, ease of use, or any of those other trivial concerns, but he will make it happen, without a bunch of talk or time-wasting nonsense. The best way to use this person is to point at a problem and walk away.
2.The OCD perfectionist programmer
You want to do what to my code?
This guy doesn’t care about your deadlines or budgets, those are insignificant when compared to the art form that is programming. When you do finally receive the finished product you will have no option but submit to the stunning glory and radiant beauty of perfectly formatted, no, perfectly beautiful code, that is so efficient that anything you would want to do to it would do nothing but defame a masterpiece. He is the only one qualified to work on his code.
3.The anti-programming programmer
I’m a programmer, damnit. I don’t write code.
His world has one simple truth; writing code is bad. If you have to write something then you’re doing it wrong. Someone else has already done the work so just use their code. He will tell you how much faster this development practice is, even though he takes as long or longer than the other programmers. But when you get the project it will only be 20 lines of actual code and will be very easy to read. It may not be very fast, efficient, or forward-compatible, but it will be done with the least effort required.
4.The half-assed programmer
What do you want? It works doesn’t it?
The guy who couldn’t care less about quality, that’s someone elses job. He accomplishes the tasks that he’s asked to do, quickly. You may not like his work, the other programmers hate it, but management and the clients love it. As much pain as he will cause you in the future, he is single-handedly keeping your deadlines so you can’t scoff at it (no matter how much you want to).
5.The theoretical programmer
Well, that’s a possibility, but in practice this might be a better alternative.
This guy is more interested the options than what should be done. He will spend 80% of his time staring blankly at his computer thinking up ways to accomplish a task, 15% of his time complaining about unreasonable deadlines, 4% of his time refining the options, and 1% of his time writing code. When you receive the final work it will always be accompanied by the phrase “if I had more time I could have done this the right way”.
What type of programmer are you?
Source: www.stevebenner.com16 -
I've found sites like Udemy/Khanacademy/Codecademy/Brilliant/Edx to be very useful — possibly more useful than expensive education.
But they still need:
1. Better correction/update mechanisms. Human teachers make mistakes and material gets outdated, and while online teachers are rectified faster than classroom teachers, the procedure is still not optimal. Knowledge should be a bit more like a verified wiki.
2. Some have great interactive coding environments, some have great videos, some have awesome texts, some have helpful communities. None has it all. In the end, I don't want to learn a new language by writing code in my browser. It could all be integrated/synced to the point where IDEs have plugins which are synced to online videos, with tests and exercises built in, up to a social network where you could send snippets for review and add reviews to other people's code.
3. Accreditation. Some platforms offer this against payment, but I think those platforms often feel very old school (pun intended), with fixed schedules, marks and enrollments. Self paced is a must.
4. Depth is important. Current online courses are often a bit introductory. We need more advanced courses about algorithms, theoretical computer science, code design, relational algebra, category theory, etc. I get that it's about supply/demand, but we will eventually need to have those topics covered.
I do believe that for CS, full online education will eventually win from the classroom — it's still in its infancy, but has more potential to grow into correct, modern education.10 -
Still trying to get good.
The requirements are forever shifting, and so do the applied paradigms.
I think the first layer is learning about each paradigm.
You learn 5-10 languages/technologies, get a feeling for procedural/functional/OOP programming. You mess around with some electronics engineering, write a bit of assembly. You write an ugly GTK program, an Android todo app, check how OpenGL works. You learn about relational models, about graph databases, time series storage and key value caches. You learn about networking and protocols. You void the warranty of all the devices in your house at some point. You develop preferences for languages and systems. For certain periods of time, you even become an insufferable fanboy who claims that all databases should be replaced by MongoDB, or all applications should be written in C# -- no exceptions in your mind are possible, because you found the Perfect Thing. Temporarily.
Eventually, you get to the second layer: Instead of being a champion for a single cause, you start to see patterns of applicability.
You might have grown to prefer serverless microservice architectures driven by pub/sub event busses, but realize that some MVC framework is probably more suitable for a 5-employee company. You realize that development is not just about picking the best language and best architecture -- It's about pros and cons for every situation. You start to value consistency over hard rules. You realize that even respected books about computer science can sometimes contain lies -- or represent solutions which are only applicable to "spherical cows in a vacuum".
Then you get to the third layer: Which is about orchestrating migrations between paradigms without creating a bigger mess.
Your company started with a tiny MVC webshop written in PHP. There are now 300 employees and a few million lines of code, the framework more often gets in the way than it helps, the database is terribly strained. Big rewrite? Gradual refactor? Introduce new languages within the company or stick with what people know? Educate people about paradigms which might be more suitable, but which will feel unfamiliar? What leads to a better product, someone who is experienced with PHP, or someone just learning to use Typescript?
All that theoretical knowledge about superior paradigms won't help you now -- No clean slates! You have to build a skyscraper city to replace a swamp village while keeping the economy running, together with builders who have no clue what concrete even looks like. You might think "I'll throw my superior engineering against this, no harm done if it doesn't stick", but 9 out of 10 times that will just end in a mix of concrete rubble, corpses and mud.
I think I'm somewhere between 2 and 3.
I think I have most of the important knowledge about a wide array of languages, technologies and architectures.
I think I know how to come to a conclusion about what to use in which scenario -- most of the time.
But dealing with a giant legacy mess, transforming things into something better, without creating an ugly amalgamation of old and new systems blended together into an even bigger abomination? Nah, I don't think I'm fully there yet.8 -
Hello everyone, this is my first time here so hi! I want to tell you all a story about my current situation.
At 18 while in the military I was able to get my first computer, it was a small hp pavilion laptop with windows 7. The system would crash constantly, even though I would only use it for googling stuff and using fb to talk to people. 5 months after I got it and continuously hated it decided to find out why and who could I blame (other than myself) for the system making me do the ctrl alt del dance all the time....
Found out that there are people called computer programmers that made software. Decided to give it a go since I had some free time most days. Started out with c++ because it was being recommended in some websites. Had many "oh deeeeer lord" moments. After not getting much traction I decided to move to Java which seemed like an easier step than C++. Had fun, but after some verbosity I decided to move into more dynamic lands. Tried JS and since at the time there was no Node and I was not very into the idea of building websites I decided to move into Python, Ruby, PHP and Perl and had a really great time using and learning all of them. I decided to get good in theoretical aspects of computer programming and since I had a knack for math I decided to get started with basic computer science concepts.
I absolutely frigging loved it. And not only that, but learning new things became an obsession, the kind that would make me go to bed at 02:40 am just to wake up at 04:00 or 06:00 because the military is like that. I really wanted to absorb as much as I could since I wanted to go to college for it and wanted to be prepared since I did not wanted to be a complete newb. Took Harvard CS50, Standford Programming 101 with Java, Rice's Python course and MIT's Python programming class. I had so much fun I don't regret it one bit.
By the time I got to college I had already made the jump to Linux and was an adept Arch user, Its not that it was superior or anything, but it really forced me to learn about Linux and working around a terminal and the internals of the system to get what I want. Now a days I settle for Fedora or Debian based systems since they are easier and time is money.
Uni was a breeze, math was fun and the programming classes seemed like glorified "Hello World" courses. I had fun, but not that much fun, most of my time was spent getting better at actual coding. I am no genius, nor my grades were super amazing(I did graduate with honors though) but I had fun, which never really happened in school before that.
While in school I took my first programming gig! It was in ASP.NET MVC, we were using C#, I got the job through a customer that I met at work, I was working in retail during the time and absolutely hated it. I remember being so excited with the gig, I got to meet other developers! Where I am from there aren't that many and most of them are very specialized, so they only get concerned with certain aspects of coding (e.g VBA developers.....) and that is until I met the lead dev. He was by far one of the biggest assholes I had ever met in my life. Absolutely nothing that I would do or say made hem not be a dick. My code was steady, but I would find bugs of incomplete stuff that he would do, whenever I would fix it he would belittle me and constantly remind me of my position as a "junior dev" in the company saying things as "if you have an issue with my code or standards tell me, but do not touch the code" which was funny considering that I would not be able to advance without those fixes. I quit not even 3 months latter because I could not stand the dick, neither 2 of the other developers since the immediately resigned after they got their own courage.
A year latter I was able to find myself another gig. I was hesitant for a moment since it was another remote position in which I had already had a crappy experience. Boy this one was bad. To be fair, this was on me since I had to get good with Lumen after only having some exposure to Laravel. Which I did mentioned repeatedly even though he did offer to train me in order to help him. Same thing, after a couple of weeks of being told how much I did not know I decided to get out.
That is 2 strikes.
So I waited a little while and took a position inside another company that was using vanilla PHP to build their services. Their system was solid though, the lead engineer remains a friend and I did learn a lot from him. I got contracted because they were looking for a Java developer. The salary was good. But when I got there they mentioned that they wanted a developer in Java...to build Android. At the time I was using Java with Spring so I though "well how hard can this be! I already use Android so the love for the system is there, lets do this!" And it was an intense, fun and really amazing experience.
-- To be continued.10 -
Idea: Emoji passwords
Bdixbsufhdbe HEAR ME OUT
I know, I know, emojis belong with teenage girls on Snapchat but there are some theoretical benefits to emoji passwords.
Brute Force attacks are useless! With such a wide range of characters and so many different combinations, they just wouldn't be viable.
Dictionary attacks are less useful! Because those require...words.
They can be easier to remember. Tell a story with your emojis. Images are easier to commit to memory than combinations of letters and numbers.
Users would adopt the feature! For whatever reason, the general population fucking loves these things. So emoji passwords probably won't take very long to see use.
I don't know much about this last one, so I saved it for last, but I would imagine that decryption would be more difficult if the available values is quite vast. I dunno how rainbow tables and hash defucking works so I'll just put this here as a "maybe"
😀33 -
You can keep telling me how to code it, and I can read about how to code it, but until I've successfully coded it in a production environment 5-10 times it's all just theoretical to me.2
-
I'm a mathematical and scientific theoretical probabilist. I listen to theories and say ''hmm that's probably true''3
-
What my professor teaches:
This is a mouse and this is a keyboard
What he asks in exams:
How do you use this particular keyboard and this mouse to create a potato?
That is pretty much what always happened.. Even in theoretical exams.. :|5 -
I did a 3 years study in computer science.
I got an intern that is on her last year of a 5 years study in computer science too.
So we have the same age, just that I have more practical experiences than her and she have more theoretical baggage than me.
We are discussing on the design of what she will do over her internship and while I'm talking about some JSON modelling she interrupt me to say something like "so this tuple is meaning..." talking about a JSON object. I didn't get what she was talking about (I never did python and didn't learn much about mathematical theorems during my study) so I asked her: "What is a tuple?".. She looked at me with dead eyes saying "what!? you don't know this ?!!" Like I was the dumbest man on earth. Fortunately our PM which is also a coding guy was sitting next to us and explained to me that by saying "tuple" she meant a "JSON object" and to her that it IS normal if I do not know what a tuple is, first because of my studies, 2nd because my job is to be an Android Dev and that I do not need to know this to do my job. He added that by the way I'm doing well my job and that if I wasn't there to help her on her code she would never succeed her internship.
I'm glad my PM intervene but fuck those who always think they know everything better than others without questioning themselves before !12 -
rant, but not an IT kind... okay, maybe not even a rant, more like depressive rambling:
in 3 days, I'll turn 29.
i'm living with my mom, in the apartment where I was born, in the room i've been living since I was born (with the exception of 2 attempts to move out which together lasted 9 months).
my theoretical monthly income should/could be around 4000€, based on my skills and experience.
but I'm a (manic)-depressive, chronically lonely idiot loser (and the manic phases come more and more rarely in recent years), so
my practical average monthly income fluctuates from 0 to about 200.
i am unable to keep a job for more than 4 months, so after being fired from about 20 or so of them since I was 18, it takes immense amounts of mental and emotional energy to even start looking for one now... so I usually don't.
i've been about 12000€ in debt for the past 8 or so years, half of which is just debt collector fees.
it's kinda funny, for years, i've been unable to solve a debt which theoretically amounts to 3 months of my theoretical achievable salary.
my father, who just left without a word of explanation when I was 18, has decided this is not viable anymore, so I'm supposed to move out by 10th of next month, "either to some cheap rooming house, or under the bridge, I don't care", as he put it.
I can't remember how it feels to exist a single hour without feeling existential dread and dreading each next day, not knowing what to do or if i'll even be able to try and do something, because this feeling is so strong that it often blocks me from being able to do anything. i just shiver most of the time that i'm awake, feeling like you feel few minutes before puking and crying at the same time. and that feeling is my "how are you?", "you know... normal".
i can't remember what it feels to feel any other way and can't even imagine it, and can't imagine that I'll ever achieve any less shit feeling.
literally all of my social contact consists of going out once to twice a month with the only 2 friends and 2 aquaintances I have who have the time and will to spend it with me.
oh, and hiding in my room, avoiding talking to my mom, because each time we talk she just reminds me what a piece of shit failure I am, and tells me how it's not that hard to change it, I just have to stop being lazy and start working for it.
she's... kind and caring about it, which somehow maybe makes it even worse.
i have about 10 almost complete game designs, each of them at least 50% more original and interesting (at least to me) than the things that are coming out for the past 10 years, being lauded as "the most original and unique".
I have been trying to make them, ANY of them, since I was 18, but I always lose all the drive and resolve and energy in like 4 months, because it's like trying to build a city on my own on a deserted island. too big for one person, but there was never anyone to help me. closest I ever got was one of my friends telling me "i've been thinking many times that i'd love to work on some project with you, if I had the time".
and second time, when I actually found an artist I was going to pay, and he was awesome, and after two weeks of me telling him how awesome what he does is and how it fits the project and my ideas perfectly, he backed out saying "i'm afraid I can't do the quality you require from me".
never ever in my life did I get actual help with something I actually wanted or tried to do.
i have no idea how it feels to have someone working with me on something I actually consider interesting and meaningful, on any of the things which I wanted to make, which made me learn programming.
I've learned graphics and animation and everything going into game making pipeline on my own because I realized nobody will ever help me, so I'll have to do all of it on my own.
I've tried to make a kickstarter once, but I started crying hysterically in the middle of writing it, because I felt like a begging piece of failure shit, even more than usual, so I deleted it.
most of people treat me like shit failure unworthy and undeserving of living, precisely as I myself know I deserve to be treated, because that's what I am, but when I ask for permission to kill myself, since I see no other solution to stop being a burden, they get angry at me that I'm just emotionally blackmailing them. when I afterwards ask them "so help me in any way to do any of the projects i want/need to do", they respond they've got no time for that.
when I talk about all of this, I get told to stop whining.
happy 29th birthday, me, a piece of shit who should've never survived this long, who should've never been born in the first place.
yay.
also, I know this is not the kind of crap that's supposed to be posted here, but i've got nowhere else. sorry.47 -
Soooo I think I have finally come to the point that I may have to create a YouTube channel, to teach software engineering from the ground up... and teach it the way the universities and everyone else should be teaching it, so that they have a solid foundation.... throwing hello world, and loops and variables at folks out of the box without any of the environment context or low level embedded register, even logic gate understanding
That lack of understanding is why, soooo many college students and younger folks, are actually pretty shitty engineers. Everything is high level languages and theoretical concepts to them. Nothing practical, that’s why there’s sooo many python and java developers that can’t for the life of them understand memory management, low level hardware interfacing etc, because the colleges don’t teach it the way it use to be taught.
I seriously fear 30 years from now or sooner when there are few embedded engineers only left till retirement, as without those folks the whole pyramid of electronics falls to pieces.
Java, C#, python, all that shit don’t run on the bare metal... there’s this magical layer of C, and assembler that does all the work just so folks can abstract their thoughts.
Either 1 of two situations will happen.. price of electronics will rise because the embedded guys are few and far between therefore salaries skyrocket... OR everything starts running shit like java on the metal, where there are a over abundance of developers, their salaries will be low because there are soo many but the processing power, space, and energy needed to run java natively causes electronics cost to increase
but regardless 30 years from now if those script kiddies are building everything I fear it cuz there’s gonna be memory leaks, and overflow issues everywhere.. shit be blowing up more than 4th of July.. lol
Soooo in effort to prevent that and keep the embedded engineers up, or atleast properly educate the script kiddies, I’m gonna make that YouTube channel.. 1 maybe 2 videos a week, 1-2 hours sessions each.. starting at the fucken ground and building up.39 -
Holy shit! Albert Einstein is a real person!
My whole life I thought he was a theoretical physicist.7 -
(Deep breath*)
.
.
.
.
(Exhale*)
.
.
.
.
I’m sitting in the parking lot 1.5 hours early to start my new job today. I’ve been rather nervous about it since I accepted the job offer in early December. I’m going to be working with completely foreign tools and software stacks than what I’m used to. I never said I was pro or experienced at this tech stack, let them know during the interviews repeatedly that I’m just getting started with this kind of work and tech stack (devops role using jenkins and ansible mostly). And my experience and knowledge is limited to theoretical understanding of how these tools work together.
I’m excited to get to learn all kinds of new tech and push myself. But I’m also terribly nervous about how quickly I can pick this all up so I’m not a burden to the team.15 -
I've seen a job vacancy that asks for the following characteristics in a developer:
- extraverted, do'er (as opposed to thinker), out-of-the-box, curious, sees solutions and not problems, structural thinking vs. theoretical thinking, loves change, acts immediately, makes choices under stress, critically questions themselves if things go wrong
What the [censored] kind of programmer is that? Sounds more like a wannabe brogrammer type.
A typical, real programmer is introverted (for he is introspective, detail-minded and is therefore good at inspecting problems and finding solutions for them).
Seeing problems is not a bad thing, it's in fact necessary to be able to identify issues and not act like your typical manager who only wants to rush to solutions. He thinks deeply and theoretically before he takes action. Theory is the foundation of identifying a problem.
What programmer is stress-resistant? It's not normal for the human brain to be able to deal with stress; this is why switch-tasking is so hard.
Question yourself if things go wrong? Perhaps, but this sounds more like trying to shove the blame around.
Since we live in a rigid computer world with rigidly-defined protocols (say, HTTP), it is often useful to think in a conventional way. Out-of-the-box? Sure, if you're being innovative, or sure, as a tangential characteristic.
In my professional opinion, this vacancy reeks of bad corporate culture.. and the biggest alarm bell I find is: "There is free beer!" Err.. yeah. Anyway.17 -
Most kids just want to code. So they see "Computer Science" and think "How to be a hacker in 6 weeks". Then they face some super simple algebra and freak out, eventually flunking out with the excuse that "uni only presents overtly theoretical shit nobody ever uses in real life".
They could hardly be more wrong, of course. Ignore calculus and complexity theory and you will max out on efficiency soon enough. Skip operating systems, compilers and language theory and you can only ever aspire to be a script kiddie.
You can't become a "data scientist" without statistics. And you can never grow to be even a mediocre one without solid basic research and physics training.
Hack, I've optimized literal millions of dollars out of cloud expenses by choosing the best processors for my stack, and weeks later got myself schooled (on devRant, of all places!) over my ignorance of their inner workings. And I have a MSc degree. Learning never stops.
So, to improve CS experience in uni? Tear down students expectations, and boil out the "I just wanna code!" kiddies to boot camps. Some of them will be back to learn the science. The rest will peak at age 33.17 -
One of my theoretical CS teachers always complains and makes it sound like everything around him is an annoyance to his existence
- being late or in a bad mood? His pregnant wife is very tiring (good ol' haha women are hormonal much?)
- having to create and correct exercises for us (students) is a nuisance because it's so much work and we're not supposed to be spoon-fed (which makes the whole learning experience very demotivating)
- every explanation start is continued by at least 3 changes in the explanation itself, which makes everything super-confusing
- all his helpers are incompetent and not rising up to his expectations
Someone needs some self-reflection2 -
Hoe about this.. Instead of a 'literal' game..
My co-developer suggested we make a minimal Linux OS (based off of Debian) and set it up to simulate fake hacking.
How does that sound?
It would still be a game, but would be so much cooler. >:3
The OS would be SOOPER light. And wpuld come with a custom set of 'hacking' tools. These 'tools' could also be installed on any other Linux os.
This is all theoretical, but we would love to hear your opinions.77 -
I'm currently taking another dive into haskell. I didn't know you needed a masters degree in theoretical something to print text on stdout.
Note to myself: make dog-emoji-based language huskyell2 -
So... After reading up on the theoretical stuff earlier, I decided to make a real AI that can identify handguns and decide whether it's a revolver or a semiautomatic with 95 percent accuracy...
Well, basically, I been browsing my local gun store's online store for four hours for training data, killed a Mac mini while first training the system and I think I ended on the domestic terrorism watch list... Was that black sedan always there?
Anyway... It's working fairly accurate, my monkey wrench is a revolver by the way.
Isn't AI development a wonderful excuse for all kinds of shit?
"why do you have 5000 pictures of guns on your computer?" - "AI development"
"why did you wave around a gun in front of your web cam" - "AI development"
"why is there a 50 gram bag in your desk?" - "AI development"
Hmm... yeah well... I think it might work. I could have picked a less weird testing project, but... No.7 -
As a developer, I constantly feel like I'm lagging behind.
Long rant incoming.
Whenever I join a new company or team, I always feel like I'm the worst developer there. No matter how much studying I do, it never seems to be enough.
Feeling inadequate is nothing new for me, I've been struggling with a severe inferiority complex for most of my life. But starting a career as a developer launched that shit into overdrive.
About 10 years ago, I started my college education as a developer. At first things were fine, I felt equal to my peers. It lasted about a day or two, until I saw a guy working on a website in notepad. Nothing too special of course, but back then as a guy whose scripting experience did not go much farther than modifying some .ini files, it blew my mind. It went downhill from there.
What followed were several stressful, yet strangely enjoyable, years in college where I constantly felt like I was lagging behind, even though my grades were acceptable. On top of college stress, I had a number of setbacks, including the fallout of divorcing parents, childhood pets, family and friends dying, little to no money coming in and my mother being in a coma for a few weeks. She's fine now, thankfully.
Through hard work, a bit of luck, and a girlfriend who helped me to study, I managed to graduate college in 2012 and found a starter job as an Asp.Net developer.
My knowledge on the topic was limited, but it was a good learning experience, I had a good mentor and some great colleagues. To teach myself, I launched a programming tutorial channel. All in all, life was good. I had a steady income, a relationship that was already going for a few years, some good friends and I was learning a lot.
Then, 3 months in, I got diagnosed with cancer.
This ruined pretty much everything I had built up so far. I spend the next 6 months in a hospital, going through very rough chemo.
When I got back to working again, my previous Asp.Net position had been (understandably) given to another colleague. While I was grateful to the company that I could come back after such a long absence, the only position available was that of a junior database manager. Not something I studied for and not something I wanted to do each day neither.
Because I was grateful for the company's support, I kept working there for another 12 - 18 months. It didn't go well. The number of times I was able to do C# jobs can be counted on both hands, while new hires got the assignments, I regularly begged my PM for.
On top of that, the stress and anxiety that going through cancer brings comes AFTER the treatment. During the treatment, the only important things were surviving and spending my potentially last days as best as I could. Those months working was spent mostly living in fear and having to come to terms with the fact that my own body tried to kill me. It caused me severe anger issues which in time cost me my relationship and some friendships.
Keeping up to date was hard in these times. I was not honing my developer skills and studying was not something I'd regularly do. 'Why spend all this time working if tomorrow the cancer might come back?'
After much soul-searching, I quit that job and pursued a career in consultancy. At first things went well. There was not a lot to do so I could do a lot of self-study. A month went by like that. Then another. Then about 4 months into the new job, still no work was there to be done. My motivation quickly dwindled.
To recuperate the costs, the company had me do shit jobs which had little to nothing to do with coding like creating labels or writing blogs. Zero coding experience required. Although I was getting a lot of self-study done, my amount of field experience remained pretty much zip.
My prayers asking for work must have been heard because suddenly the sales department started finding clients for me. Unfortunately, as salespeople do, they looked only at my theoretical years of experience, most of which were spent in a hospital or not doing .Net related tasks.
Ka-ching. Here's a developer with four years of experience. Have fun.
Those jobs never went well. My lack of experience was always an issue, no matter how many times I told the salespeople not to exaggerate my experience. In the end, I ended up resigning there too.
After all the issues a consultancy job brings, I went out to find a job I actually wanted to do. I found a .Net job in an area little traffic. I even warned them during my intake that my experience was limited, and I did my very best every day that I worked here.
It didn't help. I still feel like the worst developer on the team, even superseded by someone who took photography in college. Now on Monday, they want me to come in earlier for a talk.
Should I just quit being a developer? I really want to make this work, but it seems like every turn I take, every choice I make, stuff just won't improve. Any suggestions on how I can get out of this psychological hell?6 -
Never realized with a industry that changes by the second how relevant and timeless a single book(set) can remain. 52 year old book.
The work that knuth put into this collection to keep it timeless and language in-specific keeping it to theory rather than details of syntactical details is amazing.
Sure there are other timeless classics out there.. the algorithm book, K&R C, the dragon books, the wizard book.
But I think this single book outweighs them all in the abstraction point of view... AND it’s abstraction in the “opposite direction”... abstraction to a machine language architecture that is purely theoretical... brilliant.21 -
University, first year. I went to my Java/OOP teacher's office to about the course (I had started programming C++ ~5 years ago).
I wanted to discuss the fact that some parts of the course seemed too theoretical for beginners in my opinion. Rookie mistake : do not criticize the cursus of an academic if you are in your first year, even when you are right. I learned it the hard way...
The teacher started to tell me that I was just a first-year student, I had no experience yada yada...
To that I replied "I'm doing C++ for 5 years. This is OOP so yeah I do know a little more than you think".
I will never forget his reply "LOL C++ is not Object-Oriented !"
I never went to his course after that. I learned a few years later that the teacher was a well-known a**hole along his peers and got fired by the University...40 -
TDD.
I'm a fan of writing tests right after you write every module. I actually think it's doable.
But I'm not a big fan of traditional TDD, which is defined as: first writing the tests, making them fail, writing code until tests don't fail.
My experience with traditional TDD when writing library code is that you start with this very naive idea of what is needed, so you write classes and functions and a lot of times they look like overly simplistic pseudocode.
So what do you do? You scratch that, you delete those classes/functions several times.
I think this discovery process that your code is naive is slowed the fuck down by doing TDD.
I'd rather write a theoretical API in a readme file, then write code, and then write the tests, you can even withhold writing the tests, but never leaving them for another day, just so that you don't waste time writing tests that you're going to scratch.
There's always a time constraint, and most of us can't afford bikeshedding.
Traditional TDD feels like an esoteric thing, it tries to make programming a series of steps, it actually sounds like an infommercial.
"FOLLOW THESE 3 SIMPLE STEPS AND WRITE THE BEST CODE EVER"11 -
I feel so empty.
I can't keep up with what is being teached to us in the mathematical courses. Everything else is fine. "Algorithm and data structures" aka Info A (Programming in C++) and "Computer engineering" aka Info C (details of how a CPU, RAM etc. works) is understandable, but when it comes to math I, completely, am lost.
2-4 hours drive to university and 2-4 hours drive back to my home each day. Two oral examinations each week in Info A and Info C. Three assignments in Info A, Info C and math.
I was so naive to believe that I would be more free and have more free time as a student haha.
Maybe I should switch to a university of applied sciences. The classical university is too theoretical for me, but in the same time I know that I can't keep up with the time when I have to build a circuit in the university of applied sciences.
I am able to design and build a circuit, but I am slow. Probably because I am checking many times if I did it properly before testing it.
To my fellow German devRanters who have studied or tried to study: You all just read my situation and my thoughts. Am I wrong about what I am thinking about a university of applied sciences? How are the mathematical courses there in terms of difficulty?
If mathematics is at the same difficulty, I will try to do something else that has nothing to do with college. It just won't get into my brain.32 -
Why do theoretical computer science and maths lectures mostly start at 8 am. I am a nocturnal creature to me is like having to wake up at 3 am for others. There are other kinds of people that like to get up early so here is a suggestion: Why don't we agree that all lectures start at 11:00 earliest? It is a good time in the day for a lot of people and I would have the time to inject myself with some Mate tea.8
-
Each and every time I sit on a technical test I am reminded I don't know the theoretical background of the programming languages I claim I know.3
-
So it's been a while since I've posted as my first few months at the new job have been amazing. But now I'm running into issues with a team member that I need to get off my chest.
So my new job is front end development in React. I'm brand new to it but I was promised time to learn on the job. On my first day the team member I'm now having a conflict with offered me help. He's the most experienced so I gladly took it.
But now several months in I've noticed his teaching style doesn't work for me. He'll go into long theoretical explanations whenever I ask a question and I get overwhelmed with info. And he gets frustrated with my inability to process all that, because he feels I waste his time. So frustrated that at one time he just walked out of work and drove home, which was really upsetting to everyone.
My direct manager and my mentor in the company (our software architect), as well as our scrum master (a consultant) are all aware of the conflict. I've been assigned another colleague to help me out. Things were going ok but he got sick so I had to turn back to the team member with the conflict for assistance. Of course frustrations arose again.
Now yesterday during our sprint planning meeting we had to say what we liked and didn't like about the past sprint. And I brought up I feel I need time for learning and that I don't know where to put that, since we don't have a task for it. I said I also felt past approaches weren't working out and that I'd like to take up the offer to go on training. I was trying to word it very neutral to not upset my colleagues, as they tried their best. But the colleague who I had previous conflicts with took it personal and accused me of not listening and that is why my code is awful. While all I've been doing is rely on his code to learn. Long story short it got very heated and direct manager and scrum master who were present had to shut it down.
I'm thinking of talking to my manager and mentor today. It really hurts when you're accused of maliciousness when all you did was try. I know my code isn't perfect. But I get no help in improving it beyond long winded explanations about theory. If I ask for practical help he says he won't write my code for me. Which isn't what I expect. When I say I followed his example he says I shouldn't copy. But two sentences later he says if I don't know what I am doing I should listen to him. It's really very confused and demotivating as a beginner, but he makes it about how I waste his time and ruin his job for him. I understand he tries his best and that it has to be hard when someone seemingly is as dumb as a bag of bricks. But my manager and mentor told me they support me as long as I continue to show improvement. So I asked for alternatives (training, time to study, or whatever I haven't thought of) and now I feel like the bad person. I'm already someone with crippling low self esteem, and I'm thrown into the deep end. It kinda sucks when someone then tells you from the sideline you can't swim and how swimming works. How about tossing me one of those floaty things and then maybe accept I need to hold on to that for a bit and my technique will need work until I can make it on my own? :(2 -
Alright. This is going to be long and incoherent, so buckle up. This is how I lost my motivation to program or to do anything really.
Japan is apparently experiencing a shortage of skilled IT workers. They are conducting standardized IT skill tests in 7 Asian countries including mine. Very few people apply and fewer actually pass the exam. There are exams of different levels that gives you better roles in the IT industry as you pass them. For example, the level 2 or IT Fundamental Engineering Exam makes you an IT worker, level 3 = capable of working on your own...so on.
I passed level 1 and came in 3rd in my country (there were only 78 examinees lol). Level 2 had 2 parts. The theoretical mcq type exam in the morning and the programming mcq in the afternoon. They questions describe a scenario/problem, gives you code that solves it with some parts blanked out.
I passed the morning exam and not the afternoon. As a programmer I thought I'd be good at the afternoon exam as it involves actual code. Anyway, they give you 2 more chances to pass the afternoon exam, failing that, you'll have to take both of them the next time. Someone who has passed 1 part is called a half-passer and I was one.
A local company funded by both JICA and my government does the selection and training for the Japanese companies. To get in you have to pass a written exam(write code/pseudocode on paper) and pass the final interview in which there are 2 parts - technical interview and general interview.
I went as far as the interview. Didn't do too good in the technical interview. They asked me how would I find the lightest ball from 8 identical balls using a balance only twice. You guys probably already know the solution. I don't have much theoritical knowledge. I know how to write code and solve problems but don't know formal name of the problem or the algorithm.
On to the next interview. I see 2 Japanese interviewers and immediately blurt out konichiwa! The find it funny. Asked me about my education. Say they are very impressed that self taught and working. The local HR guy is not impressed. Asks me why I left university and why never tried again. Goes on about how the dean is his friend and universites are cheap. foryou.jpg
The real part. So they tell me that Japanese companies pay 250000/month, I will have to pay 60% income tax, pay for my own accommodation, food, transportation cost etc. Hella sweet deal. Living in Japan! But I couldn't get in because the visa is only given to engineers. Btw I'm not looking to invade Japan spread my shitskin seed and white genocide the japs. Just wanted to live in another country for a while and learn stuff from them.
I'll admit I am a little salty and probably will remain salty forever. But this made me lose all interest in programming. It's like I don't belong. A dropout like me should be doing something lowly. Maybe I should sell drugs or be a pimp or something.
But sometimes I get this short lived urge to make something brilliant and show them that people like me are capable of doing good things. Fuck, do I have daddy issues?16 -
This morning... Five hours of theoretical lesson of informatics, systems and networks!! :)
Let's Go! 💪2 -
Ok now I'm gonna tell you about my "Databases 2" exam. This is gonna be long.
I'd like to know if DB designers actually have this workflow. I'm gonna "challenge" the reader, but I'm not playing smartass. The mistakes I point out here are MY mistakes.
So, in my uni there's this course, "Databases 2" ("Databases 1" is relational algebra and theoretical stuff), which consist in one exercise: design a SQL database.
We get the description of a system. Almost a two pages pdf. Of course it could be anything. Here I'm going to pretend the project is a YouTube clone (it's one of the practice exercises).
We start designing a ER diagram that describes the system. It must be fucking accurate: e.g. if we describe a "view" as a relationship between the entities User and Video, it MUST have at least another attribute, e.g. the datetime, even if the description doesn't say it. The official reason?
"The ER relationship describes a set of couples. You can not have two elements equal, thus if you don't put any attribute, it means that any user could watch a video only once. So you must put at least something else."
Do you get my point? In this phase we're not even talking about a "database", this is an analysis phase.
Then we describe the type dictionary. So far so good, we just have to specify the type of any attribute.
And now... Constraints.
Oh my god the constraints. We have to describe every fucking constraint of our system. In FIRST ORDER LOGIC. Every entity is a set, and Entity(e) means that an element e belongs to the set Entity. "A user must leave a feedback after he saw a video" becomes like
For all u,v,dv,df,f ( User(u) and Video(v) and View(u, v, dv) and feedback(u, v, f) ) ---> dv < df
provided that dv and df are the datetimes of the view and the feedback creation (it is clear in the exercise, here seems kinda cryptic)
Of course only some of the constraints are explicitly described. This one, for example, was not in the text. If you fail to mention any "hidden" constraint, you lose a lot of points. Same thing if you not describe it correctly.
Now it's time for use cases.
You start with the usual stickman diagram. So far so good.
Then you have to describe their main functions.
In first order logic. Yes.
So, if you got the point, you may think that the following is correct to get "the average amount of feedback values on a single video" (1 to 5, like the old YT).
(let's say that feedback is a relationship with attribute between User and Video
getAv(Video v): int
Let be F = { va | feedback(v, u, va) } for any User u
Let av = (sum forall f in F) / | F |
return av
But nope, there's an error here. Can you spot it (I didn't)?
F is a set. Sets do not have duplicates! So, the F set will lose some feedback values! I can not define that as a simple set!
It has to be a set of couples, like (v, u), where v is the value and u the user; this way we can have duplicate feedback values in our set.
This concludes the analysis phase. Now, the design.
Well we just refactor everything we have done until now. Is-a relations become relationships, many-to-many relationships get an "association entity" between them, nothing new.
We write down on paper every SQL statement to build any table, entity or not. We write down every possible primary key or foreign key. The constraint that are not natively satisfied by SQL and/or foreign keys become triggers, and so on.
This exam is considered the true nightmare at our department. I just love it.
Now my question is, do actually DB designers follow this workflow? Or is this just a bloody hard training in Pai Mei style?6 -
In "Sprint Planning", the team is supposed to come up with stories, break those down into tasks, estimate those tasks as a team, then let devs choose what tasks they want to work on based on the stories pulled into that particular sprint.
Instead, our manager creates the stories. He assigns the stories to each developer and then has that developer announce his theoretical tasks (without any research on feature's or project's requirements!) in front of the entire team. So, when I say, "I think it will take me 6 hours to implement this feature", he says, "6 hours? I think it will take 3." and then types the estimate as 3. I have so much rage when that happens. Then we continue to sit in the room for 2.5 hours where we go through this long data entry mess of him typing out tasks and second guessing estimates. There is no team deliberation or collaboration, its whatever the manager says.
While there are many issues I take with this approach, my pet peeve would be the second guessing of the estimates. It would make sense for teams members to second guess estimates as long as they are the same teammates who have the ability and possibility to take on the tasks themselves.
But I disagree with a manager seconding guessing an implementation feature that "I" definitely have to do alone, and they do not possess the immediate knowledge to implement it themselves.5 -
I once failed a subject during my masters (complex analytics and measure theory).
Next year I decided to give it everything I've got. I had grown to love it and could solve most problems they threw at me. Hand written an 80 pages long "book" distilled from all the notes, proofs and visualisations from all the lectures that year.
I only exerted this effort (even though I could've just "passed" this subject) because the lecturer was so damn enthusiastic about maths. Even though he wasn't a CS teacher this course was my best experience of a teacher at uni. He loved the beauty of the maths he was teaching and managed to make me love it too.
He was a maths geek and when I aced my final he told me he actually writes code too. He showed me some simulations he wrote while he worked on some theoretical nuclear physics stuff, because that's what he was into. Really cool guy. I wish more CS lecturers were as good teachers.1 -
Worst of an job in IT? Coming home and having to fix computer still.
I fucking hate it. I fucking hate computers. There might be great stuff like nifty algorithms, grand theoretical theorems about formal languages, Lisps,... BUT that's so far away from the mundane atrocities we have to put up with when it comes to sth like installing a printer.
Newest release of driver won't install a plugin without helpful error. Older release works.. for printing some pages... Then some component (cups-filter) keeps on segfaulting.6 -
A post today made me think about this interview I had about a year ago... I shall tell you all about it.
Went to a hiring event for this company everyone was cool but this one guy (who would have been my boss) was a total arrogant, douchey, know it all.
So anyways cue interviewing with him a week later. He says if I give you task A, B, C and they need to be done by the end of the week in which order do you do them. (Note: he literally said abc not actual tasks)
Me: I don't really know how to answer that question without more information.
Him: Well I like to see how people answer it... So think about it for a second.
Me: Ok I guess if doing one task would help me do the next task faster I would do it in that order. Like I can use code or concepts from C to do B faster.
Him: What if A would take 2 days and B and C would take 1 day.
Me: I don't see how that would influence the order I do them in.
Him: Would you complete one task after another or switch between them or do see simultaneously.
Me: It would depend on my previous answer and what would be the fastest way to get them done but without more info I literally cannot give you an answer of like I would do B, C, A.
Him: Would you do the longest task first or the shorter tasks.
Me: I don't know I guess it depends on if it would help you or somebody else move forward with something if I got a particular task or the shorter tasks done first.
So cue more of this kind of back and forth about arbitrary details about undefined theoretical tasks for like 10 minutes.
Suffice is to say I didn't get the job and I'm glad.7 -
You may know I love to hate tests. Well not the tests actually, what I hate is the TDD culture.
DBMS schema in my app dictates a key can either have a value, or be omitted - it can't be null, and all queries are written with that in mind (also they're checked compile-time against schema). But tester failed to mock schema validation, inserted a bunch of null keys with mock data, actually wrote assertions to check those keys are null (even though they never should be), and wanted me to add "or null" to my "exists" queries.
No, we don't need more tests, and you're not smart with your "edge cases" argument. DBMS and compiler ensure those null values can never exists in our DB, and they're already well tested by their developers. We need you to stop relying on TDD so much you forget about the practical purpose of the code, and to occasionally break from the whole theoretical independent tests to make sure your testing actually aligns with third-party services some code uses.
And no, we don't need more tests to test your mocks, and tests to test those test, and yo dawg, I heard ...5 -
Sooooo ok ok. Started my graduate program in August and thus far I have been having to handle it with working as a manager, missing 2 staff member positions at work, as well as dealing with other personal items in my life. It has been exhausting beyond belief and I would not really recommend it for people working full time always on call jobs with a family, like at a..
But one thing that keeps my hopes up is the amount of great knowledge that the professors pass to us through their lectures. Sometimes I would get upset at how highly theoretical the items are, I was expecting to see tons of code in one of the major languages used in A.I(my graduate program has a focus in AI, that is my concentration) and was really disappointed at not seeing more code really. But getting the high level overview of the concepts has been really helpful in forcing me to do extra research in order to reconnect with some of the items that I had never thought of before.
If you follow, for example, different articles or online tutorials representing doing something simple like generating a simple neural network, it sometimes escapes our mind how some of the internal concepts of the activity in question are generated, how and why and the mathematical notions that led researchers reach the conclusions they did. As developers, we are sometimes used to just not caring about how sometimes a thing would work, just as long as it works "we will get back to this later" is a common thing in most tutorials, such as when I started with Java "don't worry about what public static main means, just write it up for now, oh and don't worry about what System.out.println() is, just know that its used to output something into bla bla bla" <---- shit like that is too common and it does not escape ML tutorials.
Its hard man, to focus on understanding the inner details of such a massive field all the time, but truly worth it. And if you do find yourself considering the need for higher education or not, well its more of a personal choice really. There are some very talented people that learn a lot on their own, but having the proper guidance of a body of highly trained industry professionals is always nice, my professors take the time to deal with the students on such a personal level that concepts get acquired faster, everyone in class is an engineer with years of experience, thus having people talk to us at that level is much appreciated and accelerates the process of being educated.
Basically what I am trying to say is that being exposed to different methodologies and theoretical concepts helps a lot for building intuition, specially when you literally have no other option but to git gud. And school is what you make of it, but certainly never a waste.2 -
Last week I wired up my home network (including custom modem and routers) myself, because the stuff my ISP wanted me to use was garbage.
Luckily Germany has "router-freedom" so ISPs are not allowed to force us to use their device to dial into the network.
I did everything myself, because the 'technicians' they kept sending me were just idiots who didn't know anything, considering the highly paid job they are doing. Usually they told me, to get the device from my ISP, because my "Router" (actually a business grade, standalone Modem by Cisco, to feed my Router) didn't even have WiFi ( lol ). Also all Technicians didn't arrive at the agreed date but at some other time. I wasn't able to wait any longer.
So I did it myself.
Consider me something more like a student of theoretical computer science. Not actually supposed to be experienced with hardware stuff.
The ISP is serving me with a DOCSIS 3.0 Network based on the television cable network in my city. For some reason they are providing the internet-access to only one socket in the apartment, which has a rather uncommon "WICLIC" connector. After having trouble getting an adapter for WICLIC to common coaxial F-Connectors (used by every DOCSIS-Modem), I made one myself.
After setting up everything (not that hard, once the connectors fit) my modem told me, that, while I'm perfectly connected to the ISPs internal Network, I still can't access the internet.
So I called the ISP...
After getting ranted at, about that what I'm doing is illegal and only certified employees are allowed to do this and I will break more, than actually do good and that I can't just connect my own "Router" (again I needed to correct her: Modem) I hang up the phone.
Also she accused me of hacking their devices because I'm not supposed to see my IP address... (My Modem told me on its web interface. I didn't even need telnet for that.)
I went to the ISPs head office, told the first desk as many technical terms as I could remember and got forwarded to something like the main technician.
He was a really nice guy. The only sane and qualified person I dealt with at this company. He asked me for my Address and Device Model, I told him my MAC and last internal IP, I had seen and he activated my internet access within a minute.
We talked a while about the stupid connector that ISP is using in the homes and he gifted me some nicer adapters to connect my modem to the wall.
Why do ISPs hate their customers that much?2 -
I am Graduate student of applied computer science. I am required to select my electives. Now i have to decide between Machine Learning (ML) and Data Visualization. My problem is Machine Learning is very theoretical subject and I have no background in ML in my undergrad. In data visualization, the course is more focused towards D3.js. Due to lack of basic knowledge i am having second thoughts of taking ML. However, this course will be offered in next Fall term. And i am also studying from Coursera to build my background till that time.
I know there is no question here but I need a second opinion from someone experienced. Also, please suggest any other resource that I should look into to build my background in ML.2 -
I've now worked on both monolithic solutions and microapps/microservices. I gotta say I'm not sold on the new approach. There's so much overhead! You don't have to know your way around one solution -- no, now you need to know your way around 100 solutions. Debugging? Yeah, good luck with that. You don't have to provision one environment for dev, test, staging, and prod. No, now you need 100 environments per... environment. Now, you need a dedicated fulltime devops person. Now devs can check in breaking changes because their code compiles fine in that one tiny microapp. The extra costs go on and on and on. I get the theoretical benefits but holy crap you pay for it dearly. Going back to monolithic is so satisfying. You just address the bug or new feature head on without the ceremony and complexity. You know you're not crapping on other people's day (compilation-wise) because the entire solution compiles.
...and yeah, I'm getting old. So get off the lawn! ;)2 -
I don't consider myself a guru in JavaScript (hell I studied theoretical chemistry), but I do hate much of the rationalization behind building a Jenga stack of libraries, frameworks, dependencies... for building everything web related.
Many of the problems I see people solving with these giant stacks could be easily solved understanding how websites work (html, css, js and how interact with each other) with no dependencies giving smaller (for end users at least) and more maintainable code (in the sense it would not require updating dependencies that may be discontinued...)
I do imagine situations where these are ideal... Since there are not absolutes and developing is very context sensitive, but man if I have js article fatigue for ridiculous scenarios.2 -
!rant
What use is all my theoretical knowledge of patterns, structures and paradigms when I am too lazy and unconcentrated to actually sit down and get my ideas running? -
Software engineering doesn't evolving the way you think of it.
There are no new big patterns. There are no new big concepts and ideas to bring that evolution to us. Rob Pike thinks that the concepts he used twenty years ago are the best possible way of implementing everything and he creates Golang.
The evolution of software engineering, and maybe the whole evolution as a concept is a tick-tock. Software engineering had its latest tick at nineties, when the concepts we call modern were developed. And the latest tock was the rise of the internet, and it given the single-computer-centered Von Neumann architecture really hard challenges. I mean ticks are theoretical inventions and patterns and ideas and etc, while tock is more of some practical, business-oriented implementations.
PHP is still in use. We have troubles with scaling and deployment. Banking systems still run old Java, Windows XP and even COBOL. We had persistence really, really long time ago, and now frontenders reinvent it and call it 'immutability'!
We had our tick many, many years ago. It's time for tock. With not only scientific but commercial use of things such as Clojure, CRDTs and maybe Rust lang, we are heading straight to our new big tock, which'll bring us new great problems to solve.
That's how any evolution goes.rant rust lang paradigms rob pike evolution golang ideas rust wk127 clojure patterns software engineering -
Fantasy and Sci-Fi,
Math and theoretical CS,
Graffiti (this one is just a sketch tho),
Wandering around (for long time and distances),
Bike riding (before someone steal it),
Sky watching (with naked eye)
and I have other not-so-popular habits that I have, but I don't know if they are considered geek.1 -
Guys, I'm wondering what do you put in your CVs.
Do you only mention what you master?
Do you mention things you only worked with once?
Do you mention things you only have theoretical knowledge about?
Do you mention mainstream skills ( HTML/CSS) that almost developer knows?
Please, I'm struggling.5 -
doing things right seems to be a waste of time
especially considering how fast things change beneath you
for years I've said I should just stop overoptimizing but I've yet to fucking try it. I said this to myself 5 hours ago and what am I doing. I spent the last 5 hours trying to overoptimize for a theoretical scenario that I won't ever even be in, because I haven't even decided what I want to immediately do
how about immediately do something Jesus fuck
next Tuesday this system will have to be rewritten again anyway
how many fucking asset loading systems do I want under my belt
just load the fucking assets
maybe decide on which assets you'll be using first so then you don't overoptimize for "WELL MAYBE ILL LOAD THEM INDIVIDUALLY THEN PUT THEM IN A NICE IMAGE IN RAM FIRST BEFORE I SEND IT OFF TO THE GPU" omg just shut up. just because you can doesn't mean you should. doesn't help everyone using this thing keeps insisting you do it this way. but you don't fucking need to.
actually you know what, I blame them. they kept confusing me with yOu ShOulD do It ThiS WAY. next thing I know I'm walking through every possible conceivable way to do asset loading so I can decide how to load assets and then end up in architecturizing of the perfect system. I didn't want to be on this path. but they told me to be on this path. I blame them
take-away: if you can make it work at all, just use that unless it breaks something. fuck how or for "what" the dumb system is designed. people don't stick to their "designs" anyway -- it's idealism just like free stuff sounds great in theory, but in reality it just shits up everything because it's unrealistic3 -
I'm not going to lie, the surge of bootcamps really irks me. Not because I'm afraid of competition, or that I'm an elitest. Mainly because a lot of people who attend these bootcamps have no real interest in software engineering. I sometimes attend a meetup, and it's a beginner meetup. I try to help out. And a lot of people clearly have no patience for learning software engineering. I try to be encouraging, but sometimes I just want to be dick and tell them "Why the hell do you want to be a dev, if you're not interested in how computers work".
I'm an 100% myself taught developer. Granted I'm 38 and taught myself programming at 14. But it came out of an earnest desire and love for technology in general. So I never shyed away from learning? C and assembler? Bring it on. Theoretical computer science? I can get with that. For me I loved computer so much, that I was willing to learn about anything in the realm of computing.
This is what annoys me with the adult bootcamp crowd. I feel they're only willing to learn as long as it's easy. If something gets complicated or complex, then they check out. And I a lot of their questions is "tell me how to do this/that". But they don't know why they would do it.
To me it feels like they're trying to fast track themselves to a dev job. Yet you would think if they're trying to do this all professionally, they would be open to learning as much as possible, and not closing themselves off.
My semi-friend who runs the meetup is trying to start a bootcamp himself. So I try I severely hold my tongue when I attend those meetups. And I want to be supportive. I certainly don't want to be the reason why people are turned off by programming. But at the same time, I hate how people are abusing this profession because they think it's fast money and an easy way to earn 6 figure salaries.3 -
!!!rant
Most exited I've been about some code? Probably for some random "build a twitter clone with Rails" tutorial I found online.
I've been working on my CS degree for a while (theoretical CS) but I really wanted to mess with something a bit more practical. I had almost none web dev experience, since I've been programming mostly OS-related stuff till then (C). I started looking around, trying to find a stack that's easy to learn since my time was limited- I still had to finish with my degree.
I played around with many languages and frameworks for a week or two. Decided to go with Ruby/Rails and built a small twitter clone blindly following a tutorial I found online and WAS I FUCKING EXITED for my small but handmade twitter clone had come to life. Coming from a C background, Ruby was weird and felt like a toy language but I fell in love.
My excitement didn't fade. I bought some books, studied hard for about a month, learned Ruby, Rails, JavaScript, SQL (w/ pg) and some HTML/CSS. Only playing with todo apps wasn't fun. I had a project idea I believed might be somewhat successful so I started working on it.
The next few months were spent studying and working on my project. It was hard. I had no experience on any web dev technology so I had learn so many new things all at once. Picked up React, ditched it and rewrote the front end with Vue. Read about TDD, worked with PostgreSQL, Redis and a dozen third party APIs, bought a vps and deployed everything from scratch. Played it with node and some machine learning with python.
Long story short, one year and about 30 books later, my project is up and running, has about 4k active monthly users, is making a profit and is steadily growing. If everything goes well, next week I'll close a deal with a pretty big client and I CANT BE FKING HAPPIER AND MORE EXCITED :D Towards the end of the month I'll also be interviewed for a web dev position.
That stupid twitter clone tutorial made me excited enough to start messing with web technologies. Thank you stupid twitter clone tutorial, a part of my heart will be yours forever.2 -
So... concerning the rant on here: https://devrant.com/rants/4299469/...
I'm making my comment as a separate rant because the thread from the original rant was too long and also slowly deviated outside context.
"Why has the rate of female developers reduced overtime?".
Here is my take:
It's natural and I'll explain why I think so...
During my computer science school days we had seventy two (72) males compared to just twelve females (12) in class. The girls could compete in theoretical grounds but when it comes to real coding they were no where near.
This boils down to the passion for programming as a real world subject. In programming you feel rewarded when you "fix a bug" and you're filled with pride when you "learn a new language". This reminds us of the scientific research of boys being more attached to reward engaging activities, most times for bragging rights while for the girls they'd prefer compassionate activities where they can easily be noticed, but unfortunately enough in programming "you only notice yourself".
We can clearly see the mode of career options in our world today...
-----------------------------------------------------------------------------
Interfering with people (Compassionate reward)
-----------------------------------------------------------------------------
* Front desk officer... Female populated
* Support personnel... Female populated
* Nurse... Female populated
* Flight attendant... Female populated
* Childcare workers... Female populated
* Preschool/KG Teachers... Female populated
------------------------------------------------------------------------------
Interfering with things (Intrinsic reward)
------------------------------------------------------------------------------
* Engineer... Male populated
* Electrician... Male populated
* Welder... Male populated
* Carpenter... Male populated
* Programmer... Male populated
From the list you'd notice females prefer jobs that are compassionate in reward, require minimal physical activities and also able to make them easily recognisable.
On the other list, male populated jobs are intrinsic in reward, physically inclined, working more with things than with people.
Now seeing the clearer picture, we could sincerely say this is nature at its finest because we have here a balance. Females are kid bearers and we shouldn't be surprised that they are more compassionate to people than with things. Males have more pride than compassion which is needed to protect a family and this indirectly affects their choice of selection.
In reality...
Females are more attracted to Males with pride.
Males are more attracted to Females with compassion.
I would say, it's all the doings of nature affecting our unconscious career options while we seek to find our purpose in life.29 -
Windows is so magical. I mean it doesn't support syslog which is in a way essential in large environments. Today my coworker told me about a tool named nxlog which has the function to send log messages from windows directly to a central syslog server. It can also read files... well theoretical because nxlog does not accept ":" as a valid character... cya C:\something2
-
I just recalled I once had to explain to my CTO what’s the difference between stack and heap memory
It baffled me a little bit, but contrary to what one might perhaps expect, this was a guy who was already making a living off of programming for about ten years selling his software to various clients, so he was clearly competent enough to create software that works, and he had in fact put this startup on its feet operationally with it already being profitable before outside investments were secured
And here I was with my theoretical CS knowledge making zero bucks before getting this job8 -
Left engineering (and my job) for theoretical CS
My best choice in my opinion, although not every body around me shares it.7 -
My college years was actually quite helpful.
I'm from a college that value academic proficiency over industrial skills. There are only 2-3 courses top that are focusing more on coding or software development. The others are theoretical and focus more on the math behinds everything (with fun projects tho, so they are not boring at all).
The importance is that, you could easily learn coding and software dev practice from good examples in your workplace, probably way better what you can get in college. But chances are that our daily job rarely touches hardcore algorithm and mathematical principal behind. Where when you actually need it (bi-weekly scenario), your knowledge and research experience in college comes to play.
And of course, by all means, that was an enjoyable college life! -
Just remembered that I still had a foobar invite link in my email inbox 😋
The challenges are odd though, first challenge was super easy (basically an idiot check), but while I was able to convert 3 cans of energy drink into a functional solution in half an hour, the verification utility is not very verbose at all. So in Python 3.7.3 in my Debian box it worked just fine, yet the testing suite in Foobar was failing the whole time. After sending an email to my friend that gave the link (several years ago now, sorry about that! 😅) asking if he knew the problem, I found out that Google is still using Python 2.7.13 for some reason. Even Debian's Python is newer, at 2.7.16. To be fair it does still default to Python 2 too. But why.. why on Earth would you use Python 2.7 in a developer oriented set of challenges from a massive company, in 2020 when Python 2 has already been dead for almost a whole year?
But hey now that it's clear that it's Python 2.7, at least the next challenges should be a bit easier. Kind of my first time developing in SnekLang regardless actually, while the language doesn't have everything I'd expect (such as integer square root, at least not in Debian or the foobar challenge's interpreter), its math expressions are a lot cleaner than bash's (either expr or bc). So far I kinda like the language. 2-headed snake though and there's so much garbage for this language online, a lot more than there is for bash. I hate that. Half the stuff flat out doesn't work because it was written by someone who requires assistance to breathe.
Meh, here's to hoping that the next challenges will be smooth sailing :) after all most of the time spent on the first one (17.5 hours) was bottling up a solution for half an hour, tearing my hair out for a few hours on why Google's bloody verification tool wouldn't accept my functioning code (I wrote it for Python 3, assuming that that's what Google would be using), and 10 hours of sleep because no Google, I'm not scrubbing toilets for 48 hours. It's fair to warn people but no, I'm not gonna work for you as a cleaning lady! 😅
Other than the issues that the environment has, it's very fun to solve the challenges though. Fuck the theoretical questions with the whiteboard, all hiring processes should be like this!1 -
IT people stereotypes:
young gods = „I know that already for ages. Those senior folks are way too pessimistic and too theoretical.
Give me shell.. wait.. Call me h4ck0r g0d now because I use kali linux.“
("no, you did not learn anything")
senior slow-moes = „could you please retry your last sentence? I just opened my wordpad“
("triple-facepalm")
sales-Sebastian = „Sure we can do that. By intention our solution offers only graphQL access because our design goal is minimalism and simplicity“
(no, your solution is piece of sh*t).
Framework-Fred = „let’s stick to togaf. Please use these terms from the glossary of following data management framework. You can reach me via ITIL process xy“
Nearshore-Naan-Ganjid = „I can program in HTML“
("program")
Feel free to extend5 -
"learning" html and css
So, there are these courses in my school, "ÜK" ("Überbetriebliche Kurse") we call them.
It's 5 days, a Tuesday to Thursday, next week Tuesday and Wednesday, last day in the afternoon we have a test.
Today is that Wednesday
I know html and css pretty well, so if was pretty easy, I didn't even bother to do some of the tasks we had
I did look through the book over the weekend to make sure I knew my stuff right
Now, the theoretical part of the test had stuff like "colspan" witch was nowhere to be seen in the book and PowerPoints, and some stuff was just unclear as fuck, seriously...
*looks up colspan*
Apparently it's a table cell that spans two columns, or more, if you want to
I never needed something like that, and we never looked at it, that's why I didn't know about it.
There where other unclear questions as well, so I went to the teacher after the test and told him.
He gave me an empty test where I made an X for stuff that wasn't in the book or the PowerPoints and wrote a bit for the stuff that was unclear.
I did know some more then some in the class, so I generally xed the stuff that we didn't learn
The teacher will correct it accordingly, and cut out the questions that we couldn't have known.
So that's at least something
For the next class, he's going to have some "theoretical learning" or whatever he called it
I mean, in the end it's fair, but it annoys me that these courses aren't as well thought out as they should be...
So after this course I can say:
I DIDN'T LEARN A FUCKING THING
Btw, the second part was changing a website up the way its telling you to, that was easier the the theoretical part, witch was ticking the right fucking box...undefined html & css grade stupid questions fuck lack of examples get your shit together css html fuck this shit know-what-youre-talking-about theory is bullshit fuck learning5 -
Today I tried teaching a 36 years old student about HTML and layout. My inner self is always restless for practice as an excuse for less talking, but in the end I end up doing even more talking and getting kinda embarrassed.
Good thing is that student understood everything well enough in this 1 hour. I also inserted some good stuff: tips and tricks, conventions mentioned, trends... He even craved for more information.
I'm going to prepare to make further studies more fruitful, because the next synopses won't be as theoretical as today's one.1 -
This is gonna be a long post, and inevitably DR will mutilate my line breaks, so bear with me.
Also I cut out a bunch because the length was overlimit, so I'll post the second half later.
I'm annoyed because it appears the current stablediffusion trend has thrown the baby out with the bath water. I'll explain that in a moment.
As you all know I like to make extraordinary claims with little proof, sometimes
for shits and giggles, and sometimes because I'm just delusional apparently.
One of my legit 'claims to fame' is, on the theoretical level, I predicted
most of the developments in AI over the last 10+ years, down to key insights.
I've never had the math background for it, but I understood the ideas I
was working with at a conceptual level. Part of this flowed from powering
through literal (god I hate that word) hundreds of research papers a year, because I'm an obsessive like that. And I had to power through them, because
a lot of the technical low-level details were beyond my reach, but architecturally
I started to see a lot of patterns, and begin to grasp the general thrust
of where research and development *needed* to go.
In any case, I'm looking at stablediffusion and what occurs to me is that we've almost entirely thrown out GANs. As some or most of you may know, a GAN is
where networks compete, one to generate outputs that look real, another
to discern which is real, and by the process of competition, improve the ability
to generate a convincing fake, and to discern one. Imagine a self-sharpening knife and you get the idea.
Well, when we went to the diffusion method, upscaling noise (essentially a form of controlled pareidolia using autoencoders over seq2seq models) we threw out
GANs.
We also threw out online learning. The models only grow on the backend.
This doesn't help anyone but those corporations that have massive funding
to create and train models. They get to decide how the models 'think', what their
biases are, and what topics or subjects they cover. This is no good long run,
but thats more of an ideological argument. Thats not the real problem.
The problem is they've once again gimped the research, chosen a suboptimal
trap for the direction of development.
What interested me early on in the lottery ticket theory was the implications.
The lottery ticket theory says that, part of the reason *some* RANDOM initializations of a network train/predict better than others, is essentially
down to a small pool of subgraphs that happened, by pure luck, to chance on
initialization that just so happened to be the right 'lottery numbers' as it were, for training quickly.
The first implication of this, is that the bigger a network therefore, the greater the chance of these lucky subgraphs occurring. Whether the density grows
faster than the density of the 'unlucky' or average subgraphs, is another matter.
From this though, they realized what they could do was search out these subgraphs, and prune many of the worst or average performing neighbor graphs, without meaningful loss in model performance. Essentially they could *shrink down* things like chatGPT and BERT.
The second implication was more sublte and overlooked, and still is.
The existence of lucky subnetworks might suggest nothing additional--In which case the implication is that *any* subnet could *technically*, by transfer learning, be 'lucky' and train fast or be particularly good for some unknown task.
INSTEAD however, what has happened is we haven't really seen that. What this means is actually pretty startling. It has two possible implications, either of which will have significant outcomes on the research sooner or later:
1. there is an 'island' of network size, beyond what we've currently achieved,
where networks that are currently state of the3 art at some things, rapidly converge to state-of-the-art *generalists* in nearly *all* task, regardless of input. What this would look like at first, is a gradual drop off in gains of the current approach, characterized as a potential new "ai winter", or a "limit to the current approach", which wouldn't actually be the limit, but a saddle point in its utility across domains and its intelligence (for some measure and definition of 'intelligence').4 -
I never wanted to be a programmer. I spent years in education being confused and bombarded by information that was poorly explained and made little to no sense.
Then in my final year after having a basic understanding of the building blocks, I just sent out to solve a problem >I< had.
It all just clicked into place and it turns out I had learned but perhaps didn't have an appreciation of how to apply it.
I'm guessing my education was too theoretical and not enough practical. -
I don't have to deal with this, cuz I know I am shitty dev..
I get the job done, most of the time better than the previous devs on this project.. but if you drop me in an entry level interview, I know I'd flunk it.. big time.. I don't have the necessary theoretical knowledge and my terminology sux..
Was discussing new hires with my boss and he was like wtf you're talking about, you're a senior.. I'd consider myself a middle at best due to lack of theoretical knowledge..2 -
Question: when modeling a language using a nondeterministic finite state machine, do I have to add a "trash" state, if a deterministic one would need one or can it just be obmited and if so why?5
-
My ideal Saturday night is a few (or a lot of) beers and a room full of comp sci majors arguing about hypothetical sorting methods and their theoretical complexities.1
-
So I think I know the theoretical stuff about js but I have trouble implementing them on my projects.
Like I'm clueless and don't know what to write. (these are my very first projects)
Is it normal?
Can you guys give me some advice?14 -
I just want things to do on my phone that are intellectually going to be stimulating
and not brainwashing
is that so hard to ask for
I can't keep playing sudokus all the time. the other day I wanted to go read a coding answer I asked an AI in my browser on my laptop but I was in bed on a voice chat with a sleeping person and didn't wanna get up out of bed to go fetch the laptop. my browser lets me see tabs I have open on other machines and this AI website makes a url with a unique id so you can browse to the chat you had, but it seems to not always work
earlier in the day I had asked the AI a theoretical coding question and it answered, but I got distracted and needed to go do something before I finished reading it (it was long). but when I was in bed on my phone playing sudokus for intellectual stimulation, annoyed and bored it was the only thing I could do, I had the bright idea of opening the tab on my laptop through my phone. Vivaldi is great and this always works. unfortunately the AI website's unique id thing doesn't. it loaded the website by URL correctly but the AI website just took me to the home page and I had no chat history to read =[
phones are literally computers but you can't do anything on them. can't watch videos without ads or bugs, if you load a lot of websites the tab management system sucks and performance is shit, controls for games suck even if you could find something not ad infested
hell you can't even do a pedometer that's not trying to get you to "log in". bruh
you can't even browse GitHub code! at least last I checked. it's just awkward, their app
I feel like I'm in a straitjacket in terms of technology and I wanna scream. I don't even know how to adequately describe my frustration or what I keep wishing for. it's been prominent in my head a couple years now. it's like we're regressing in terms of compatibility. went from card games provided by Microsoft like solitaire and spider, paint... to Jesus fuck you can't even get paint in a browser now without someone trying to fleece you
remember when things were inventive, nice, and not shit?
I don't even like playing mindustry on a phone to be fair. fighting the controls is most of the experience. so maybe phones are only good for reading things
I just noticed my brain over time doing sudokus learns so I wanted to practice engaging in something and learning as exercise, cuz I think it would be good for the brain damage. bah5 -
very interesting how uni stressed me tf out but is still better than school has been.
I'm taking a class which has a theoretical and practical part, and there is a guy leading the practical lesson. and after struggling to find motivation for studying, this class somehow probably gives me my hopes back... even though I'm way less capable than the rest in what we're doing, I still can follow everything, which is very suprising to me because I'm always behind and the class has some recommended classes I should've taken before (but I failed some or didn't take them at all)... I still can follow the class somehow?
so... school taught me to not ask question because even if they say there are no dumb questions... the possibility still existed that I could ask a dumb question (shoutout to my math teacher in 3rd class). so... I stopped and when I didn't understand something I gave up.
now... this class makes me feel differently, I can ask questions and the guy I've talked about talks to me normally, talks to me as human beings should talk with each other and doesn't judge me for making a mistake, because... mistakes are human and when I allow myself to ask questions I can learn from it.
this is really a weird epiphany I had this week
and I also don't know if anything of this makes sense1 -
I really think I prefer to be judged in an interview based on a walk through of a project you would want me to work on or a project to work on at a specified time or even my public projects in my repo, not some theoretical basics of programming.
Frankly, most times I barely remember this basic shits but obviously use them as the need arise in projects.1 -
I don't know if this can be classified as a legit "regret" or not, but anyway (hence no wk78 tag).
I've always chosen to focus more on the theory behind computers and computing rather than on practical dev skills. Not saying that the more theoretical things aren't fun - concepts from theoretical CS and maths still regularly blow my mind, as do the more "esoteric" languages like Haskell, Idris, and Coq. However, after seeing you fine folks here at dR talk about practical development, it feels like there's a whole world of stuff that I've missed about computers and programming, especially web programming. I think I'll tackle that next when I have some free time, maybe spend some time learning PHP to see what all the hate's about... (really though, it must do something right if it has such a huge userbase, plus, I think devRant uses it too...?)
Anyway, just wanted to say that you folks are really cool and an awesome source of inspiration. Best community ever.3 -
My reasoning is stupid, I just think it's cute in a pimp my ride kind of way. I heard you like getting colossally pounded in the fucking ass, so we put a virtual machine inside your compiler so you can use your binaries while you compile your binaries.
But there is a practical angle to it, too. It's state, structures and execution within the code itself -- that is, in a sense, generators "embedded" within the source, but without any kind of special syntax.
Rather, the code is all the same, and I'd have the option to make calls at compile time: the output of these calls could, in turn, be part of the resulting binary or processed by further calls.
It'd greenlight the wildest fuckery in the jungle, because *that* is the true and ultimate abstraction: programs that write other programs with minimal human intervention. But is my (still) theoretical, cheap ass two-dollar prototype approach held together with clown jizz and prayers better than the endless cumloads worth of corporate investment that's dumped and pumped into generative AI on a daily basis?
Well... **lights cigarette**
That's what we're about to find out, mother fuckers.1 -
So I just got the message that I failed my theoretical informatics exam again for the 4th time. I'm so fucking tired from these stupid subjects that I won't ever need in the future, but they stop me from getting my damn degree. And worst of all, I have to wait a whole year to try again. Wasting my time away for nothing...4
-
In addition to the programming language or theoretical concepts. It is also essential to develop good problem solving skills.
Concepts like design patterns and refactoring would be better taught using hands on exercises based on a long running example, such as having the students create a project in an introductory course on a programming language and then take that codebase as a starting point for the assignments on design patterns and refactoring.
It would be unrealistic to assume that developers would be working only on a single programming language in their entire career. So, a few pointers on how to go about learning new languages based on similarities with programming language(s) they already know would also be there. -
I'm absolutely fuming why on earth would someone try to apply exactly all rules of a theoretical concept. I hate those so called "scrum masters". We can't apply all rules of agile we're not machines. There's real life and theory.1
-
At an interview, interviewer keep on hitting me with theoretical questions, why python don't have switch cases, what is default sorting in java etc... I told him I don't bother about theory, then this conversation happened.
I(Interviewer)
I: do you know time complexities?
me: Yes
I: okay, tell me a few sorting or searching algorithms which have logarithmic complexity?
me: binary search (with loud and confident voice)
I: he told, in worst case it will have O(n) tell me any other
me: *thinking*
I: what are you thinking? what is time complexity of merge sort
me: O(nlogn)
i: it's logarithmic.... -
According to my university lecture you have clean and good code if every tiny little functionality is split into 5+ files. Gotta have an interface, factory, low level implementation, high level implementation, and at this point I don't even know what purpose the other abstraction levels have. Just end me already...
Sometimes I think of how much great and useful stuff you could learn at an university if they used time efficiently. But instead you spend years mostly just studying theoretical or very abstract topics. Whereas 80%+ of useful knowledge and skills you learn on your own.3 -
Back in high school, before I knew how to actually code, I wrote a paper about a theoretical "Social" Operating System. Back then, to me it seemed like an all-so innovative product.
I came across the document while looking through an old chat on facebook. Reading it now, it seems the operating system was just a basic linux system with a pretty UI. -
!rant but a question...
I know that with the vast examples/tutorials online this may not be necessary, but I wanted to ask the community if you guys/gals would recommend going back to school to get a formal CS education or if it would be a waste of time, money, and resources compared to just using web based sources? I've tried the college thing 3 times when I was younger but couldn't concentrate and lacked the discipline to focus and finish classes. But I'm a bit older now and wanted to know if you would recommend going back to school or if time would be better spent performing self-study and learning from home?
I'm still extremely new to coding and programming and only have basic knowledge of actual coding and a lot of the theoretical stuff in programming is completely foreign to me. Like for example, how to optimize code. I know that refactoring code to have a smaller more efficient footprint is always desirable, when it doesn't interfere with readability, but I'm unaware of where/how to modify code to run efficiently. Of course that may be wayyy to advanced for my use cases anyway 😂.
I'm trying to teach myself python as it seems like a great language for starting out and getting to understand the concepts of programing. Plus, it can be used directly in my line of work as well as side projects that I wanted to try my hand at.
Thank you in advance for your recommendations everyone!2 -
Disclaimer: This is all theoretical. Neither me nor my friend (with whom I discussed this) are stupid enough to even try to pursue this, but as an idea, i believe it might generate cool/new ideas/ways for handling secure communications across social groups.
Let's do some role play. Let's design a delivery app for drug dealers, think Seamless or Uber Eats, but for drugs. Not for big deliveries, like kilograms of coke, but smaller stuff. Maybe a few grams of it or something. The clients could rate dealers, and vide-versa. This would build a level of trust within the system. There would be no names, just anonymous reviews, ratings, and prices. Only the info you'd need to know.
The biggest (only?) problem we found (besides legality) was that, how would you prove that you're a client and not a snitch (or cop). This would have to somehow be handled both on signup, as well as when ordering (let's imagine that all who are clients are pure and won't ever snitch).
One of the ways we found to combat this was to have the app invite-only. This would, in theory, do away with the problem of having snitches signing up. However, what if the phone got stolen/breached by a snitch, and they also got full access to the account. One way we thought we could combat this would be with a "dispose number" or something similar. Basically, you call a number, or send a text, or message a Signal bot etc, which would lead to the account's instant termination, no traces of that user left. Hence, a dispose number.
The flow of the app would be as follows:
A client wants some amount of heroin. He opens the app, searches for a dealer, sends the him the desired amount, and in return gets back a price from the dealer. If both parties agree on the amount and price, the deal would start.
The app would then select a random time (taken from the client's selected timeframe and the dealer's "open" time) and a location (within a certain radius of both them, somewhere in between them both for convenience). If both of them accept the time and place, they'll have to meet up at said time and place.
The actual delivery could also be done using two dead drops - the client drops the money at one of them, the dealer drops the goods at the other one. Yes, this might be subject to abuse, but it wouldn't be that bad. I doubt that clients would make huge orders to unknown/badly rated dealers, as well as dealers accepting offers from badly rated clients. My idea is that they would start small, just so if they do lose their money/goods, the actual loss wouldn't be as big for them, but for the other party, having bad ratings would mean less clients willing to buy or dealers willing to sell.
A third way would be to use crypto, but the reason I left this as the last one is because it's not that wide-spread yet, at least not in local drug dealing. With this method, the client would initiate the order, the crypto would be sent to either the dealer or an escrow account, the dealer would then drop the goods at a random place and let the client know where to go to get them. After the client has gotten the goods, they could both review/rate the quality as well as the overall experience with that dealer, which would either make or break the dealer's upcoming deals. This would be pretty much like other DNM's, but on a local scale, making deliveries faster.
So far, this would seem like something that would work. Are there any ideas that might improve this? Anything that might make things more secure/anonymous?
My reason for this post is to spark a conversation about security and anonymity, not to endorse drugs or other illegal stuff.
Cheers!
PS. Really loving the new PC design of devRant14 -
Dell Summer Internship Experience
Firstly,to be a part of this process it is important to clear the exam conducted by college and according to me it wasn't something which can't be easily achieved so to prepare of this exam stick to basics of all subjects which have been taught so far till semester majorily data structures,data base,Java,C, operating system were asked.Basics of all following subjects should be clear which also going to help during internship.I myself prepared for the test from geeksforgeek.I tried to gain as much as basic knowledge of subjects I can.And after selecting from test you have you go through hackathon on that personally I think one should be prepared with latest demanding skills.Mostly all the hackathon topics were in and around Machine Learning,Block chain,Web development,Databases.So typically should be aware of all these technologies and how this can be used to enhance in project.During hackathon days it is important to be interactive,it is good to clear doubts or explain your idea and how innovative you project is and how different it can be and further keep in mind how your project can be industrial utilized.Try to make your project more in aspect of how industry going to adapt this or how this problem's solution is perfect in every terms for a company.And majorily at last it comes down to how to present your project infront of your panel.I think keep that session as much as interactive you can,try to answer their queries,and most importantly know your part of the project very well on theoretical as well as on code level. At last you have to go through a HR interview in which firstly you have to be prepare with a nice resume in which you to include all your achievement's,projects and most importantly keep it short and simple and include only those things which you are completely aware of.For interview first try to know and learn about company, it's goals,in what field it is presently working and during interview there is nothing to worry about you just have to talk like you are talking with a normal person,express all your views ,try to speak out. Confidence is one important thing for this interview.So this was conclusion of my experience from hackathon hiring process from Dell.5 -
First and foremost, students should be carefully taught the logic and mentality behind programming. Most of the time I see that the introductory programming courses waste so much energy in teaching the language itself. So students kinda just get fucked cause many people end up ending the course without having actually gained the "programming perspective".
Stop teaching pointers and lambdas and even leave the object oriented stiff till later. If a student doesn't know why we use a For loop then how can they learn anything else.
I believe once that thing in your brain clicks about programming, everything goes smooth from there... kinda :P
Second of all, and this pertains mainly to the engineering and science disciplines.
We need a fundamental and strong mathematical foundation. And no I don't mean taking fucking double integrals. Teach us Linear Algebra, Graph theory, the properties of matrices, and Probability theory.
One of the things I suffered from most and regret in university is having a weak foundation in math and having to spend more time catching myself up to speed.
It's so annoying reading a paper on a new algorithm or method and feeling like an idiot because I can't understand what magic these people did.
Numerical Methods...
Ok this is more deeper, maybe a 2nd year course.
But this is something we take for granted.
Computers don't magically add and subtract and multiply.
They fuck up.
And it'll bite you in the ass if you're not even aware that the computer we all love so much isn't as perfect as we think
Some hardware knowledge.
Probably a basic embedded systems course with arduinos
just so you can get a feel for how our beautiful software actually makes those electrons go weeeeeeeee
And finally
Practice practice
Projects projects
like honestly
just give me the internet and some projects
Ill learn everything else
Projects are the best motivation
I hate this purely theoretical approach
where we memorize or read code and write these stupid exams
Test what we are capable off
make us do projects that take sleepless nights and litres of coffee
And judge our methods, documentation, team work, and output
Team work skills and tools (VCS, communicating, project management, etc.)
Documentation and Reporting
Properly
:)
maybe even with LaTeX :D
Yeah that's the gist of whats on my mind at the moment regarding an ideal computer science education
At least the foundations
The rest I leave it to the next dude. -
Algorithms class assignment..
"Prove that the merge procedure cannot run in place".
Searching google...
There are multiple merge procedures (though super complicated) that run in place.
What's the use of this class if we can't be practical because we must be theoretical, but we can't mention real theoretical stuff because it's so complicated??
I mean we are being told something that is just wrong..
I really hate this fucking professor. She went to Oxford and now thinks she's the smartest person in the universe.. -
I know I am late as all hell to this question, but my favorite place (more accurately - time), is in college during statistics and probability class.
Just to keep the theoretical bullshit away.
(theorists don't @ me)3 -
Spent most of my time studying algorithms, data structures and other theoretical stuffs in college. But tried to do some web development with heavy frontend for course projects and for fun (beautify my cv as well)
Interviewers: wow, you'r experience quite focused on frontend and graphics
Me: (poker face…)2 -
Don't have a cs degree, when I was in college I didn't know what I wanted to do, so I got an bachelor's in math figuring that would open a lot of doors. Did a boot camp after college to test the waters and found out i had a real passion for engineering. 2 years later I am teaching people with Masters in cs how to get shit done at my job. Morale of the story, your education in the theoretical doesn't mean shit when it's time to get practical work done.
-
A classmate I haven't seen in 2 years popped up in my Linkedin.
I looked up her profile and it seems like she now works at SWE in okayish company after an internship in a prestigious company.
This throws me a little bit (I am jealous obviously). We've worked in the same uni project before, she's okay when it comes to theoretical courses but a bit behind when it comes to anything related to computer. I would never think of her working as SWE as she did better in traditional engineering (think Civil Eng, Mechanical Eng etc, Aerospace Eng.).
And yet I heard a lot of people online complaining about difficulty of finding graduate/junior position. If a person like her can find something, surely someone with pure CS background should find something easier. But then again, job hunting is 50% pure luck. I have concern on the quality of work that she will produce, but maybe I underestimate her a lot? 🤔6 -
TIL "monorepos" are a thing, where you just whack all your projects into one insanely large repo. And not just a niche thing either - used by some of the biggest tech companies.
I thought this was a code smell that everyone moved past when we abandoned subversion.
I understand the theoretical arguments around ensuring that everything can be compatible, can make large scale changes at once, etc. - but I don't really buy that in practice. Surely if you've got that many inter-dependencies going on that just points to the fact you've got crappy code with way too much internal coupling?!
Does anyone use this paradigm? To me it just sounds like, for the big companies, moving away from one huge repo was too much hassle. So they gave it a fancy new name and pretended it's the new "cool way to work" instead.4 -
Writing my master thesis at my company, theoretical computer science, doing fancy shit with scheduling rules. but am just a "working student".
Realized, that all my project member, also other colleagues, standing right behind me at a Whiteboard, discussing that part of the project I am the expert of, as this exactly is my topic.
They were asking very new team member about my topic, but they know nothing, just guessing how this could be.
Nobody did even think about asking me.
So I continued working on what they thought "nobody has knowledge about at all". -
Okay so there are a lot of things that are left by us students as "this would be taught to us on job, why bother now?" So i have many questions regarding this:
- is it a safe mentality? I mean University is teaching me, say a,b,c and the job is supposed to be like writing full letters, than am i stupid to stick to just a,b,c and not learning how to write letters beforehand?
- what is even "taught" on job? This is especially directed towards people in Big firms. I mean i can always blame that small ugly startup who treated me badly and not gave me any resources, but why do i feel its going to be same at every other company?
I guess no one is gonna teach me for 6 months on how to write classes with java, or make a ml engineer out of me when i don't know jack shit about ml.... That's the task for college, right?
I feel that when these companies say they "teach", you they mean how to follow instructions regarding agile meetings, how to survive office politics and how to learn quickly and produce an output quickly. I don't think that if i don't know how MVI works, then they are gonna teach me that, would they?i guess not unless they already have someone knowledgeable in that topic
- what about the things that are not taught in our colleges and we wanna make a career in it? Like say Android. From what i have experienced , choosing a career in a subject that's not taught you in grad school immediately takes away some kind of shield from you, as you are expected to know everything beforehand. So again, the same questions bfrom above
i did learned something from job life tho, and that too twice. Once it was when i first encountered an app sample for mvvm and once when i found out a very specific case of how video player is being used in a manner that handled a lot of bugs.
Why i didn't knew those approaches when i was not in job? Well, the first was a theoretical model whose practical implementation was difficult to find online that time and the second was a thing that i myself gave a lot of hours, yet failed to understand. However when i was in the company , i was partnered with a senior dev who himself had once spent 30 days with the source code to find a similar solution.
So again , both of above things could have been done by me had i spent more time trying to learn those "professional tools" and/or dwelve deeper into the tech. And i did felt pretty guilty not knowing about those...5 -
Dell Summer Internship Experience
Firstly,to be a part of this process it is important to clear the exam conducted by college and according to me it wasn't something which can't be easily achieved so to prepare of this exam stick to basics of all subjects which have been taught so far till semester majorily data structures,data base,Java,C, operating system were asked.Basics of all following subjects should be clear which also going to help during internship.
I myself prepared for the test from geeksforgeek.I tried to gain as much as basic knowledge of subjects I can.And after selecting from test you have you go through hackathon on that personally I think one should be prepared with latest demanding skills.Mostly all the hackathon topics were in and around Machine Learning,Block chain,Web development,Databases.So typically should be aware of all these technologies and how this can be used to enhance in project.
During hackathon days it is important to be interactive,it is good to clear doubts or explain your idea and how innovative you project is and how different it can be and further keep in mind how your project can be industrial utilized.Try to make your project more in aspect of how industry going to adapt this or how this problem's solution is perfect in every terms for a company.And majorily at last it comes down to how to present your project infront of your panel.
I think keep that session as much as interactive you can,try to answer their queries,and most importantly know your part of the project very well on theoretical as well as on code level. At last you have to go through a HR interview in which firstly you have to be prepare with a nice resume in which you to include all your achievement's,projects and most importantly keep it short and simple and include only those things which you are completely aware of.For interview first try to know and learn about company, it's goals,in what field it is presently working and during interview there is nothing to worry about you just have to talk like you are talking with a normal person,express all your views ,try to speak out.
Confidence is one important thing for this interview.So this was conclusion of my experience from hackathon hiring process from Dell.2 -
I'm starting to think about putting two of my interests together: chess and coding. Does anyone has some good reference on how to start getting into it? I'm looking in particular for good theoretical references. Thank you 😃3
-
I'm a physics student who have problem with the "theory without every application (even theoretical)" approach of my university. I'm at the second year. The year is near to end i will pass at the first year of Informatic Engineering, one of my real True love who took from me a lot of time. I don't know what will happen... But Electronics and Informatics are my True love. I hope it's not too late...2
-
Answering on Stack Overflow and writing blog posts in free time, teaching courses and working on new projects in work time. I am forced to keep my theoretical knowledge fresh, and every day I try to answer a new kind of problem on stack. I didn't know the answer to a lot of my SO answers, I test and find out my answers. It's mutually beneficial.
-
I just signed up for the preparation course for the Offensive Security Certified Professional (OSCP) certificate. Does anybody have experience doing this course? or has maybe some tips for the exam? or any learning suggestions?
I‘ve decided not to get a CEH certificate because its just too theoretical, the OSCP is way more practical and i think there is way more to learn from this course/exam1 -
I was really teasing myself about it a week ago, but I definitely think now that building a language server before I try to get people to try Orchid is the right call.
There is a ceiling to the quality of error reporting without editor support, and because I'm not happy with the best I could've possibly gotten, I didn't really put that much effort into it. Before I got started on the language server, the interpreter would fail with the first error.
Because with LSP the new theoretical limit of DX is the lack of type information which still isn't great but it's a problem I already live with, I'm compelled to meet that limit by perfecting error detection.
It also helps that the interpreter's startup time is 2ms so I can simply run it in thread on every keystroke to generate truly live, basically instantaneous feedback.17 -
Anyone here working with quantum computing stuff? If so, what do you do exactly? Are you more of a theoretical physicist or a programmer? Does it pay well? Is it fun?
I'm learning about QC and considering specializing in it, but idk if it's a good career path.2 -
My vague naive extreme understanding of interview questions are on a spectrum from situation a to situation b.
But what should the industry be doing? Is the industry just going wrong blindly copying big N companies hiring process without the same rationale? (e.g. they need computer scientists able to deal with problems specific to them at their size and that often means creating new tech, unreal problem solving abilities and cuh-rayzee knowledge)
a) stupid fucking theoretical shit that some people argue you won't ever need to be doing in practice for most companies, while giving you no ability to google, leetcode hard problems kind of stuff
b) practical work similar to what you'd be doing on the job, small bugs, tasks, pair programming on site with your potential future coworkers
Lots of people hate option a because it's puzzle/problem solving that isn't always closely related to what's on the job. Whiteboarding is arguably very much a separate skill. (Arguably unless it's like a big N company where you want computer scientists to deal with specific problems that aren't seen elsewhere, and you're making new tech to deal with your specific problems.)
We could go to the extreme of Option b, but it tends to trigger people into shitfits of "NO, HOW DARE YOU MAKE ME DO REAL WORK, BUT NOT PAY ME FOR IT AT THE INTERVIEW STAGE"
That's before we get into how to execute option b whether or not it's being given as a take home assignment (which is a huge pain in the ass and time sink, among other issues) vs a few hours at the potential workplace working with some of the future potential coworkers and soaking in the work environment (you have to figure out how to take the time off then)
Is it really just poor execution overall for the wrong use cases for the majority of the industry? What should the industry be doing in which cases.
Then this is all before HR screening with shit like where they might ask for more years of swift experience than its existed. -
Are there any good courses for practical machine learning (that uses an actual language)? I tried out Andrew Ng's course and it seems more theoretical than practical.2
-
Since I lack proficiency in Object Oriented Analysis and Design and Datastructures and Algorithms and this has caused me many problems at work, I must review these.
You'd think you don't need to know the 'dry theoretical matter' as they say, oh but you do.. I found out first hand at one of my tougher programming jobs where you have to create everything manually.
And now, looking at my entire first and second year of university courses regarding this matter.. the amount I have to study is enormous. Datastructures and algorithms alone: 1000+ page book + 500+ slides.. and that's only fresh man year! Yep.
I could say there's a way around it but.. I don't really think there is. If I keep just knowing the basic programming concepts, I won't get far. I need to dive deeper.
Until I master this material, it will keep haunting me in programming jobs.
The frustrations of a developer..7 -
For me it's definitely teaching. Whether I teach coding or any mathematical or even theoretical subjects. I find that when you teach someone you learn how to communicate better and transfer knowledge effectively. Communication is key in client relationships.
Secondly when you teach someone a concept you think you understand you tend to find flaws in the way you understand that subject matter by forcing you to hear your explanation out loud. This in turn will make you delve deeper into that subject matter and make you understand it better, rearranging your own perceptions and correcting those flaws. -
I wrote a theoretical mobile development exam today. At some point, I had to change inactive to suspended in a long passage. So natural I found myself wishing I could just ^+F or CMD+F to find replace.
-
I've said it before and I'll say it again: I believe in theoretical study prior to proof of concept.
At least for me, it takes me a 100 times more time to make a proof of concept the 'quick and easy' way rather than properly studying the theoretical knowledge and then applying it.
For example, it took me one and a half months to build a small website in ReactJS without much prior knowledge. It took me exactly one day performing the same task when I properly had studied all its internals and theoretical knowledge before I started.
If I know what I'm doing, I can easily create; if I don't, then I'm just messing around, looping myself into problems ad infinitum.
Teach a man to fish..2 -
What I hate the lost about exam season, is the lack of coding... Spend two months cramming all the theoretical parts of computer science, and it just gives no time to code
-
Writing buy essay paper is like studying your soul. More information you may read here: https://essaysarea.com/buy-college-... Have in the offing you all the time wondered why do teachers and professors mete you this bunch of written assignments? Why can’t they ask you all that in an said form? The answer is entirely simple. When you a note an attempt – you learn to verbalize yourself in a more judicious way, and also you reveal your essay skills, your vocabulary and your own writing style. And all that is not an vocal activity. By means of essay elementary essays you can wax to be a decidedly masterful and creative wordsmith or speaker, or reasonable scholar or whatever. Article develops you in uncountable ways.
If we look moreover in your indoctrination we when one pleases understand, that except essays – there’s a loads of written assignments, which later on force call to be written. A short register of examples is: Time papers, examine papers, progression works, profoundly works, dissertations, argument papers etc.
All these activities order smashing writing skills, which can be developed not by means of script essays, and practicing.
Another consequential side of publication essays – is referencing and citation. Do you know what is APA and MLA citation/referencing? If not – than you haven’t written 1 endeavour in your unhurt life.
APA (American Subconscious alliance) and MLA (Up to the minute jargon guild) are 2 guidebooks, which order help you pull the wool over someone’s eyes citation and referencing in your essay. Copying is a very serious erudite offense, and if you do not cite all the old sources properly – you will be accused of plagiary which can hurt and injure your reputation. Citation and referencing plays a exceptionally fat lines in your custom essay. You will have to learn to cite all the sources properly. They inclination indubitably be valuable after you in tomorrow, as in every written assignment you are theoretical to manipulate a sure period of referencing and citation. It can be either MLA or APA, Harvard, Chicago, Turabian etc.
When you make up an tract – you occur your sound viewpoint in a written form. After you be undergoing developed your own mode of correspondence – you certainly would rather developed a assured style of thinking and talking. In this distinct way – endeavour leader helps you.8 -
This question might make you lose a brain cell because of stupidity in the question. Read with caution
Is there a way to compile a game for Windows from Linux in Unreal engine? I did google some posts but the answer was either use a Virtual machine which will not be done or use the the theoretical method of using mingw but the forum posts state that it will be tricky business or use a windows machine. I have dual booted windows with linux on my machine.
However since the machine has a 512 gb ssd most of the storage space is devoted to unreal engine which takes 47 gigs in itself and have a lot of programs installed I have a usable 20 gigs left out of 145 gig partition. Windows has around 318 gigs of storage to it but I have 100 gigs free at most. So after installing the windows sdk, visual studio with extensions, unreal engine and some other stuff I don't have much space left for myself. I need that much space since I install a lot of games to my ssd. So now I cant load my bigger projects for playing on my windows. I could use my hdd which is mostly used for backups and 100+ gig stuff. Though the hdd's are of course far slower than ssd's which shouldn't be a problem however last time I used visual studio it ate more than 2 gigs of ram for a solution meaning that the compiler has very low memory for itself to actually compile so for any large files the hdd has more of a bottleneck.
Oh and I can't upgrade my ssd's or ram because I don't have enough money.
Thanks for the answers in advance4 -
After almost 3 years of professional experience I’d like to specialize more in something but I struggle to because I enjoy almost every aspect of IT: I find front-end really fun, I find very rewarding to build good user experiences and I’m excited for what WASM may bring on the table but I even like to work on the back end on both: legacy monoliths and modern micro services, I love to refactor clunky programs full of “cargo cult” code and redundancies put by people who doesn’t understand the framework they’re using and to make them shine. I’m even good at UNIX/Linux scripting and with Docker (often colleagues asks me advice on these topics) so I’m really tempted to upgrade my knowledge by learning K9S and reading the 1000+ pages of Unix Power Tools to get into operations/DevOps especially considering which the field is the least likely to be overrun by cheap developers coming from a 3 months boot camp.
On top of that I’ve got even into more theoretical topics: I’m following a course on algorithms and data structures in C and in future I want to learn the basics of AI for a personal project but these things aren’t much about employment but personal culture.
Have you got any advice for this disoriented young man?12 -
Man I want to develop a software...got lots of idea and all( also got a computer science degree with all theoretical bullshit) how can I develop one from start to end....13
-
Typically every computer science major begins with either C C# C++ java or python , creating so much abstraction from the hardware which just loads your mind with questions that remain unanswered.When ever i program something i always think of how the under lying stuff is working.They never explain how and where software meets the hardware.Why are they keeping students away from the hardware. I think a cs graduate without knowing the underpinning of a computer should not be considered a cs graduate as opposed to being a software engineer a computer science major relates to everything that is a computer that includes the theoretical stuff and a little bit know how of computer hardware. Instead of teaching this stuff and assembly as a language in the first semester they teach you java or C++. Could not speculate on why this is so.11
-
Any tips for onboarding a new joinee to a couple-month old Django back-end project and eventually take it over, as my tenure ends?
The newbie is from a theoretical CS background and only knows very basic Django.
It's gonna be fine, I know; I'm just not sure how to go about handing over the project since even with coding best practices and detailed comments and a README.md, there's still a lot of stuff happening in the background that I know only because I've worked with it daily.3 -
Crush is lyk theoretical algorithms. Just good to thing about. But implementation ... U knw rest of it.
-
You know
When I first saw etherum talking about am distributed state machine i thought wow. Not very practical but NEAT. I envisioned being able to make a byte code that could be stored in transactions and run by individual clients in an async function and each step of the resulting execution and the values of managed ram would be stored at intervals so other clients could take over and execute a few more statements and compare what should always be expected results that are identical
A grand incredibly inefficient system however really neato from the theoretical computer nerd standpoint !
Boy was I disappointed lol all it is a basic contracts language but yet they state it could be like a word computer ! How ? I thought maybe if you had enough nodes participating maybe you could store registers and the like in transaction values ? Wouldn’t that be the way ?
Seems like as a word computer they’re stuck somewhere between very simplistic js and something prior to amptron in usability yet they advertised as a world computer
Am i missing something ? I mean you could create something that would translate higher level code into smal numeric statements and then send it additions values but what would it be useful for and how would you actually. Store anything ? -
According to MIT and some other programmers, as I interpreted it from their video, Computer Science is not a science, but rather an art:
https://youtube.com/watch/...
I'm not sure this is the truth.
First things first. Definition:
- In order for a field to be a science, it has to have an internationally recognized body (such as physics has one). Does computer science have one?
Furthermore, one of the definitions of science:
"a branch of knowledge or study dealing with a body of facts or truths systematically arranged and showing the operation of general laws:"
source: https://dictionary.com/browse/...
- In order for a field to be considered art, its essence has to be about aesthetics.
Now, it's true that Computer Science is not about computers (as they are mere physical manifestations and tools that we use to practice the essence of what are abstract models that we theorize, much like Mathematics is not about numbers).
Like is said in the video (3:39 and example at 4:06): Computer Science is about formalizing intuition of process: input, algorithm, output, the precise imperative knowledge of 'how to' vs. Geometry ('what is' true, i.e. declarative knowledge).
Now, if we're formalizing and being precise, are we being scientific or theoretical? It could be argued we're then being theoretical, except for the case of Applied Computer Science, where things get more scientific (introducing observable proof).
Further elaborate discussion is welcome.
Proceed.4 -
My CS (theoretical foundations of computer science, specifically) professor is currently teaching regular expressions... Has been for three weeks. Same thing over and over. All of his examples involve using regular expressions to parse HTML. He just told us to write a script (using Perl-style regex) that would recursively find and follow link tags in various websites. Just... no...1
-
Looking for good literature regarding CRUD. Basically i want to have a list of possible dataoperations nowadays. And the relations to commands like Copy, Paste, Search, List, Undo Redo, Macros etc. Any suggestions?16