Details
-
AboutA dreamer, planner and executor
-
SkillsHTML, CSS, js, nodeJS, react, php, laravel, python, C, C++, Java, mysql. progressing on react-native and devOps
-
LocationIndia - but Indonesia Origin
-
Github
Joined devRant on 11/29/2017
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
-
Friend of mine: so I wonder how do you test your applications in the startup?
Me: testing? *grabs his coffee laughing*
Actually we have a complete build pipeline from commit/pull-request to dev and production environments. No tests. Really. We are in rapid product development / research state.
We change technologies and approaches like our underwear (and yeah, this is frequently). If we settled some day and understood the basic problems of the whole feature palette, we'll talk about tests again.rant early product development test driven development proof of concept don't make me laugh prototype startup3 -
!rant
Let's take a moment to appreciate interested and enthousiastic non-developers who really want to learn a programming language.
I am studying Medical IT at my college and most of my classmates aren't coming from an IT background.
We're currently working with Java, PHP, JavaScript and some require Node for their semester projects.
Some of my classmates approach me when they're stuck while coding and I try to teach them as much as possible so they understand what they are doing wrong and how to fix it.
I also show them how they can optimise their code step by step and they love it!
As a classmate told me yesterday:
"It's always so much fun working with you. I come up with a small problem, but I end up learning so much more about programming when solving a problem with you. I appreciate that."
It's a mindset I've learned when I was doing my developer apprenticeship back in the day. One of my colleagues told me: "if they want your help because they need a quick fix, tell them to kiss your ass. If you know they've already tried everything they could and ask you specifically because they want to understand what they are doing wrong, they are future developers with great potential, so go teach them."
May the force be with you, my enthousiastic little non-devs ❤️6 -
As I am now in a leading position in the middle of a agile transition:
has anyone got a source for a project done completely with user stories?
I am searching a real life example with already finished stories an active backlog and a documentation.
I just can't wrap my head around it. When and what do you document? In which Form do you document? How are you writing user stories with more content like diagrams and such?
(we use jira and confluence but just started with stories)
I read some articles on the topic and watched some talks but sill don't get the picture.8 -
Does anybody know a course on machine learning with python that doesn't need that much mathematical knowledge? Because in every course I find I need to know advanced mathematics yet I am still in grade 10 and haven't studied it yet.17
-
What's all the fuss about Message Queuing? Why so much hype and noise? It's just literally message Queuing? What are use cases?3
-
So turns out I am making a blog about my attempt to make a Facebook but not clone for my wife and her friend. Any blog naming ideas? I am thinking "Facebook but Different" haha. The idea would not be sharing direct code, but more of a devlog and coding choices(as a backend dev, I am sure the front end choices will be perfect and Superior to all front end developers' choices 😁😁)3
-
How should I start off with end to end encrypted applications for the web.
Anybody has any known examples or starter repos I could start off with :)
Preferably nodejs10 -
It's been a year since I first entered the world of development.
Let's see what I have accomplished so far:
Learned:
Java, J2EE, Node.js, Python, Django, Android, Angular, html/css, Rxjs, RxJava, Linux, MySQL, Mongodb, Docker, Heroku, AWS
Projects:
All unfinished.
Job:
Still working in IT security goddammit.
Fucking hell. Why am I so good at learning but shit at working?6 -
So I just bought my new laptop and I'm thinking "Forget about Arch. I don't have time to waste now. Let's just install Debian and save time for important tasks I have. Why should I redo everything that is done, while I have enough undone jobs already."
2 days later, at last I managed to install nvidia hybrid drivers and get it to work successfully. Now I just have to find out the cause of the black screen I get when it recovers from suspend.7 -
I hired a woman for senior quality assurance two weeks ago. Impressive resume, great interview, but I was met with some pseudo-sexist puzzled looks in the dev team.
Meeting today. Boss: "Why is the database cluster not working properly?"
Team devs: "We've tried diagnosing the problem, but we can't really find it. It keeps being under high load."
New QA: "It might have something to do with the way you developers write queries".
She pulls up a bunch of code examples with dozens of joins and orderings on unindexed columns, explains that you shouldn't call queries from within looping constructs, that it's smart to limit the data with constraints and aggregations, hints at where to actually place indexes, how not to drag the whole DB to the frontend and process it in VueJS, etc...
New QA: "I've already put the tasks for refactoring the queries in Asana"
I'm grinning, because finally... finally I'm not alone in my crusade anymore.
Boss: "Yeah but that's just that code quality nonsense Bittersweet always keeps nagging about. Why is the database not working? Can't we just add more thingies to the cluster? That would be easier than rewriting the code, right?"
Dev team: "Yes... yes. We could try a few more of these aws rds db.m4.10xlarge thingies. That will solve it."
QA looks pissed off, stands up: "No. These queries... they touch the database in so many places, and so violently, that it has to go to therapy. That's why it's down. It just can't take the abuse anymore. You could add more little brothers and sisters to the equation, but damn that would be cruel right? Not to mention that therapy isn't exactly cheap!"
Dev team looks annoyed at me. My boss looks even more annoyed at me. "You hired this one?"
I keep grinning, and I nod.
"I might have offered her a permanent contract"45 -
*Now that's what I call a Hacker*
MOTHER OF ALL AUTOMATIONS
This seems a long post. but you will definitely +1 the post after reading this.
xxx: OK, so, our build engineer has left for another company. The dude was literally living inside the terminal. You know, that type of a guy who loves Vim, creates diagrams in Dot and writes wiki-posts in Markdown... If something - anything - requires more than 90 seconds of his time, he writes a script to automate that.
xxx: So we're sitting here, looking through his, uhm, "legacy"
xxx: You're gonna love this
xxx: smack-my-bitch-up.sh - sends a text message "late at work" to his wife (apparently). Automatically picks reasons from an array of strings, randomly. Runs inside a cron-job. The job fires if there are active SSH-sessions on the server after 9pm with his login.
xxx: kumar-asshole.sh - scans the inbox for emails from "Kumar" (a DBA at our clients). Looks for keywords like "help", "trouble", "sorry" etc. If keywords are found - the script SSHes into the clients server and rolls back the staging database to the latest backup. Then sends a reply "no worries mate, be careful next time".
xxx: hangover.sh - another cron-job that is set to specific dates. Sends automated emails like "not feeling well/gonna work from home" etc. Adds a random "reason" from another predefined array of strings. Fires if there are no interactive sessions on the server at 8:45am.
xxx: (and the oscar goes to) fuckingcoffee.sh - this one waits exactly 17 seconds (!), then opens an SSH session to our coffee-machine (we had no frikin idea the coffee machine is on the network, runs linux and has SSHD up and running) and sends some weird gibberish to it. Looks binary. Turns out this thing starts brewing a mid-sized half-caf latte and waits another 24 (!) seconds before pouring it into a cup. The timing is exactly how long it takes to walk to the machine from the dudes desk.
xxx: holy sh*t I'm keeping those
Credit: http://bit.ly/1jcTuTT
The bash scripts weren't bogus, you can find his scripts on the this github URL:
https://github.com/narkoz/...53 -
Alright, it's not perfect yet, only one post exists and the anonymous analytics are hardly working. Next to that I'm tired as fuck and need to go to bed so fuck it, here we go:
https://much-security.nl
There's not much yet, just one tiny post :)
I have no clue if it will work or crash but I think it'll handle well enough 😅
If you'd find any security issues, please don't exploit them, just report them and I'll take a look asap!
Thanks!44 -
!rant
!!git
Who here uses `master` for development?
My boss (api guy) tried to convince me that was normal practice. I gently told him that it sounded crazy and very very bad.
Here's the dev path I'm enforcing on my repos:
(feature branches) -> dev -> qa* -> master -> production*
*: the build server auto-pulls from these branches, and pushes any passing builds to staging/production.
Everyone works on their own feature branches, and when they're happy with their work, they merge it into `dev`. `dev`, therefore, is for feature integration testing. After everything is working well on `dev`, it gets merged into `qa` for the testers to fawn over and beat with sticks. Anything that passes QA gets merged into `master`, where it sits until we're ready to release it. When that time comes (it's usually right away, but not always), `master` gets merged into `production`.
This way, `master` is always stable and contains the newest code, so it's perfect for forking/etc. Is this standard practice, or should I be doing something different?
Also, api guy encourages something he calls "running a racetrack" -- each dev has their own branch (their initials) and they push to that throughout the day. everyone else pulls from it regularly and pushes to their own branch. When anyone's happy with their code, they push from their (updated) branch to `qa` (I insisted on `dev` instead.)
Supposedly this drastically reduces the number of merge conflicts when pushing to an upstream branch due to having a more recent ancestor node?
I don't quite follow that, but it seems to me that merging/pushing throughout the day would just make them happen sooner? idk.
What are your thoughts?30