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 - "first approach"
-
Got assigned an intern to mentor him, with an explicit order not to do any of the legwork for him.
We start out with some fuzzy requirements. Intern starts overengineering a generic solution, so I make out a best architecture that conforms to the business requirements and I explain it to the intern why are we going to use such approach and tell him how we are going to do it in three phases.
I explain the intern the first phase, break it down in small tasks for him and return to my projects...
After a couple of days of no words from the intern, I decide to check up on him to see how is he progressing, only to hear him complaining the task is boring. So, instead of doing the assigned tasks, he decided he should do a "design" for a feature I told him explicitly not to do, since it is going to be designed by the design team later on.
I explain it to the intern that we have to do the boring task first because we can't proceed with the next phase of the implementation without the necessary data from the phase one.
Intern says okay and assures me he got it now. Few days later, I check up on him, and he tells me he feels he is doing all the work and that I don't contribute to the project. I call up my boss and tell him intern wants a meeting. Since I was working from home, I quickly pack my things and head to the office. Boss talks to the intern before I managed to get to the office. Once I got there, I meet the intern, and he tells me everything is okay. I ask what did the boss say to make things okay all of a sudden, and he tells me he said we are a team now. Our company has a flat hierarchy model, so he tells me he doesn't feel he needs a mentor, that we are both equal, and that I have no idea how to work in a team, and then proceeds to comfort me on how human interaction is hard and that I will learn it one day... I was like wtf?
I tell him to finish the phase one of the project and start with the phase two, and I leave home again.
I call up my boss and ask him what did he say to the intern, and he says: "nothing much, just explained the project a little bit and how it fits in the grand scheme of things.". I ask about the equal team members thing, and me not being a mentor any longer, the boss goes wtf, saying he never said anything about that to him.
So the kid can't focus on a single task, over-engineers everything and doesn't feel he can learn anything from developers with more experience, doesn't want to obey commands, and also likes to lie to manipulate others.
Tomorrow we'll decide what to do with him...
Sorry for the long rant, it was a long stressful day.86 -
Client: we need you to give us access to the code ASAP. We don't like this black box approach.
Me: You have always had access to the code. It is here on this bitbucket repo and your usernames have admin access.
Client: We want the code moved to our GitHub before EOD.
I check out how to move repos over and it's fairly easy.
Me: just give me access to create a repo on your GitHub account and you can have the code moved over.
Client: Sorry it's late in the day and we stepped out to get drinks. (It was 2:30 pm). Not sure why you think there is a rush on this, we'll handle it first thing next week.
Me: WTF14 -
I always like to approach a new coding project by concentrating on the data model first. I've seen a lot of projects built on extremely convoluted database structures and it really hurts because it makes it hard to add new features to the project.
So I look at the requirements of the new project and try to come up with a basic data model. Then I like to think about what logical future additions to the project could be. And using those, I try to see if the data model is flexible enough to be able to handle those additions fairly easily or if complex migrations or hacks would be needed to account for new use cases and features.
I think once you have a solid data structure and database technology, planning out an API or rest of the software is pretty straight forward. I like to create reusable pieces of middleware early on in the project which makes it easy to apply consistent functionality with ease to different API endpoints.8 -
curl cheat.sh — get an instant answer to any question on (almost) any programming language from the command line
tldr
do curl cht.sh/go/execute+external+program to see how to execute external program in go
And this question: why I actually should I start the browser, and the browser has to downloads tons of JS, CSS and HTML, render them thereafter, only to show me some small output,
some small text, number or even some plot. Why can't I do a trivial query from the command line
and instantly get what I want?
I decided to create some service that will work as I think such a service should work.
And that is how wttr.in was created.
Nowadays you probably know, how to check the weather from the command line, but if not:
curl wttr.in
or
curl wttr.in/Paris
(curl wetter in Paris if you want to know the weather in Paris)
After that several other services were created (the point was to check how good the console
can solve the task, so I tried to create services providing information
of various nature: text, numbers, plots, pseudo graphic etc.):
curl rate.sx/btc # to check exchange rate of any (crypto)currency
curl qrenco.de/google.com # to QRenco.de any text
And now last but not least, the gem in this collection: cheat.sh.
The original idea behind the service was just to deliver a various UNIX/Linux command line cheat sheets via curl. There are several beautiful community driven cheat sheet repositories such as tldr, but the problem is that to use them you have to install them first, and it is quite often that you have no time for it, you just want to quickly check some cheat sheet.
With cheat.sh you don't need to install anything, just do:
curl cheat.sh/tar (or whatever)
you will get a cheat sheet for this command (if such cheat sheet exists inf one of the most popular community-driven cheat sheet repositories; but it surely does).
But then I thought: why actually show only existing cheat sheets? Why not generate cheat sheets or better to say on the fly? And that is how the next major update of cheat.sh was created.
Now you can simply do:
curl cht.sh/python/copy+files
curl cht.sh/go/execute+external+program
curl cht.sh/js/async+file+read
or even
curl cht.sh/python/копировать+файл
curl cht.sh/ruby/Datei+löschen
curl cht.sh/lua/复制文件
and get your question answered
(cht.sh is an alias for cheat.sh).
And it does not matter what language have you used to ask the question. To be short, all pairs (human language => programming language) are supported.
One very important major advantage of console oriented interfaces is that they are easily
programmable and can be easily integrated with various systems.
For example, Vim and Emacs plugins were created by means of that you can
query the service directly from the editor so that you can just write your
questions in the buffer and convert them in code with a keystroke.
The service is of course far from the perfection,
there are plenty of things to be fixed and to be implemented,
but now you can see its contours and see the contours of this approach,
console oriented services.
The service (as well as the other mentioned above services) is opensource, its code is available here:
https://github.com/chubin/cheat.sh
What do you think about this service?
What do you think about this approach?
Have you already heard about these services before?
Have you used them?
If yes, what do you like about them and what are you missing?24 -
When I first joined the profession, I had a mentor who refused to give me straight-forward answers to my questions / queries. He always had the same answer, "Google it. Find the solution yourself." I hated him for that. Sometimes he used to explain that it was for my own good (blah, blah, the usual stuff) and not because he didn't know or couldn't give me the answer straight-away. I still thought it was just that I was too smart to ask all the right (complicated) questions and he didn't have the answers.
(Of course, that is a bit too exaggerated; he used to help me out with complicated stuff when he knew I was blocked and couldn't move further; he wasn't a sore mentor; he was a good one, in his own way.)
Several years later, I find myself giving the same answers and advice to juniors I mentor. It turns out that push to figure things out on my own did me a lot of good. I'm able to approach any problem head-on and not freak out even if the specs or the deadlines seem surreal. I know how to "figure" answers to problems that I come across for the first time. In the process you learn a lot of stuff that "keep you ahead of the curve and not grow old".2 -
The amount of people who don't know the difference between kilobyte and kibibyte is too damn high. So much confusion.
TL;DR : Most people use Kilobyte ( KB ) and Kibibyte ( KiB ) wrong and i am angry about it.
When i first got involved with software as a teenager, i always wondered why we convert kilo to mega with multiplying by 1024, when we do it with multiplying by 1000 basically everywhere else. Our physics teacher called this SI unit system and told us that this is an internationally accepted statement. So why is there a different rule ? Did i miss out something ? Regrettably I didn't ask her about this.
I just didn't get fully as a teenager. Now, as I am a developer now, i understand that dealing with power or ten is troublesome. Due to ease of work, we lazily mess with SI system and use it wrongly. Isn't it the time we end this abomination ?
2 years ago i talked to a friend about this, he said that i shouldn't bother.
I talked to a teacher, he said "you are right but using different brand of unit system can be overkill, since there is not much difference anyways." I said okay and left.
1 mega = 1000 kilo
1 giga = 1000 mega etc
also,
MB = Megabyte ( 1000 Kilobyte )
KB = Kilobyte ( 1000 Byte )
MiB = Mebibyte ( 1024 Kibibyte )
KiB = Kibibyte ( 1024 Byte )
I am writing this because today i saw someone do it wrong on the internet, all of these came into mind. I wonder your approach about this, for research purposes.
Call me dick all you want, but i am the guy who always corrects uncertainty, no matter what. Things should be in place, correctly. No i don't have OCD. If you say something like "I have 1 MB of executable file, which means i have 1024 KB of it", i will find you, and i will correct you.37 -
For fucks sake, just because you don't know anything besides JS, you don't have to constantly complain how it's "so fucked up"!
Yeah there's a lot of frameworks. So what? Python has 50+ wsgi frameworks just for server-side apps, Linux has literary hundreds of desktop environments, C++ has over 30 actively-developed UI frameworks, and let's not even get started on CMSs or game engines. And each language comes with its own dependency management or two, NPM discourages static linking & bundling dependencies until the very end, while some others only recommend dynamically linking widely-available dependencies & always bundling the remaining ones.
Software development is constantly evolving, and for most time there's no right or wrong approach. And when one approach is chosen over another, there's a reason for that. Imagine you just found a perfect library for your use case, but some idiot decided to only offer minified code with bundled jQuery? Or a different idiot made it impossible to have multiple versions of a dependency on your system without resorting to one of various third-party hacks?
Every language has a ton of various frameworks & libraries that ultimately do the same thing, every language has a bunch of design choices you probably don't understand at first, and every language was made with a purpose and the fact that you're using it proves it achieved that.
Last but not least, all devs had to learn about quirks in various languages, and they're fucking tired when someone who barely knows a language tries to act smart going "ahaha how the fuck 0.1 + 0.2 isn't 0.3".10 -
I guess my best AHHA moment was back when I learned that good code is simple code.
When I started out I wanted to prove myself by showing of how good of a programmer I was(and which I retrospectively wasn't) , which basically meant to use every high level concept I was aware of whenever possible. Multi threading where linear execution would have been totally okay, polymorphism with x meta classes where a switch would have been enough, all that shit.
It wasn't until I had to guide the first person through that mess of useless ego stroking that I found out how much time and money I wasted by not going with the easiest approach that solves the problem.
Took me some time to fully lay off that attitude but it surely was one of the most influential moments of my career.6 -
It was 1999. I was just starting my first real job as a programmer for a major insurance company. We were working on code that would screen scrape legacy mainframe data output and convert it to a web-based UI. REALLY stupid project approach I had no input on. I happened to find a programmer in Germany who had released his code in the public domain that would help with making a certain conversion task easier. I downloaded his code and put it to work.
During a code review, a programmer who was probably about 60 asked me where I got the code and what it was doing. I didn't even get to the part about what it was doing because he made fun of me so badly, in a fake German accent in front of a room full of non-programmers, for using code that today is no big deal due to the prevalence of open source. I just clammed up in humiliation because he got everyone laughing at me. His philosophy was if we didn't buy it or write it ourselves, we had no business using it.
I guess I was just ahead of my time?6 -
Had a great day yesterday. Productive, happy, felt great, and was focused despite a lot of cute distractions. Finished a third of my feature.
Today, I wanted to start work early because I had planned out what I wanted to work on next and how to approach it. I felt motivated. I’d jump out of bed, get ready, and start early. No breakfast but maybe some coffee.
Woke up to two hours of constant distractions, irritations, and time wasting instead. Anger. Everything sought to prevent me from starting.
When I finally got to work, the first thing I saw: political warmongering bullshit.
Guess I’m not getting much done today.13 -
You know what really pisses me off about the dev community is the circle jerk that ensues when someone bashes something they have no experience in. Take yesterday's React bash on Reddit and DevRant. Thomas Fuchs compared React and JSX to the intermingling of HTML CSS and JS of 15 years ago. If you knew anything about React or spent 1 hour learning what it's about you would immediately know why that isn't true but no, a giant circle jerk ensued comparing it to PHP! I'm sorry but HOW can you compare a pure JS view library that is renderable by the browser, to a full fledged server side language?? Not to mention the React approach uses a completely different programming paradigm of functional programming.
When I first saw React and Redux I realized what this is all really about, a shift in the paradigms of programming. React + Redux is the first time that functional programming has entered mainstream. We've had functional programming available to us via Haskell and more recently Clojure for a while now but it was never very obvious how powerful functional programming could be outside of the niche that used it for more analytical type tools. Now we have things like hot reloading (https://youtube.com/watch/...) and state playback (https://youtube.com/watch/... skip to ~3min to watch the magic) thanks to immutable state.
Before you decide that React is just another flavor of the month library I encourage you to learn about the advantages that functional programming provides (https://medium.com/@cscalfani/...) and checkout Elm (http://elm-lang.org/) as well. The nice thing about React + Redux is that it gives us a way to start programming functionally, without having to learn ML style syntax like Elm and ClojureScript. Keep in mind, when Object Oriented Programming was becoming popular it was widely controversial as well and look at all it has done for us.4 -
Whatever you do, just keep going.
If you don't have mental capacity to do all tasks today, do one or two. If you want to do that side project you wanted, but lost motivation in the moment, do at least something, like a sign up form. Just keep going. Put some work in, make this day's net impact positive. And it's not all about work! Wanted to play that game you bought on a steam sale but never opened? Play the first level today. Wanted to learn how to make music? Download Ableton or Fruity Loops, watch a tutorial video on YouTube, replicate the steps. Just keep going.
Wandering directionless and letting yourself go is the sure path to misery. Remember — every figment of human behavior has a reason. It is important to identify reasons behind seemingly random behavior patterns and comprehend them in a non-judgmental way. Then, starve what holds you back, and feet what keeps you going.
I have bipolar type I + autism. Using this approach and remembering that everything has a reason helped me debug my low productivity. And no, I don't mean my job, I mean my real goals I want to pursue even if I had a billion in the bank today and never had to work a single day in my life.
Aaand, the reason was?… fear. I discovered I had PTSD all along that manifested when I was misdiagnosed and prescribed strong neuroleptics. In a way, it's a chemical lobotomy, just less invasive and more reversible. My intelligence came back, but it came back together with PTSD.
Now, instead of chasing mythical productivity, I know the reason behind the lack of it — PTSD. It is hard to fight what isn't defined, but it is real to win a fight with a thing with a name and a face.
Just keep going. That's my message to you.15 -
Yesterday I started programming a telegram bot. First approach. Just curious.
Pretty impressed.
It's well documented and funny.5 -
So I would really like to see a devrant like app where devs can share design ideas for problems that are greater than a function call, or topical questions found on stack overflow.
As I have gotten older, I have realized that actual implementation is typically easy, the design approach is typically harder to get right from the first go, so open critique can be very useful.6 -
A dev team has been spending the past couple of weeks working on a 'generic rule engine' to validate a marketing process. The “Buy 5, get 10% off” kind of promotions.
The UI has all the great bits, drop-downs, various data lookups, etc etc..
What the dev is storing the database is the actual string representation FieldA=“Buy 5, get 10% off” that is “built” from the UI.
Might be OK, but now they want to apply that string to an actual order. Extract ‘5’, the word ‘Buy’ to apply to the purchase quantity rule, ‘10%’ and the word ‘off’ to subtract from the total.
Dev asked me:
Dev: “How can I use reflection to parse the string and determine what are integers, decimals, and percents?”
Me: “That sounds complicated. Why would you do that?”
Dev: “It’s only a string. Parsing it was easy. First we need to know how to extract numbers and be able to compare them.”
Me: “I’ve seen the data structures, wouldn’t it be easier to serialize the objects to JSON and store the string in the database? When you deserialize, you won’t have to parse or do any kind of reflection. You should try to keep the rule behavior as simple as possible. Developing your own tokenizer that relies on reflection and hoping the UI doesn’t change isn’t going to be reliable.”
Dev: “Tokens!...yea…tokens…that’s what we want. I’ll come up with a tokenizing algorithm that can utilize recursion and reflection to extract all the comparable data structures.”
Me: “Wow…uh…no, don’t do that. The UI already has to map the data, just make it easy on yourself and serialize that object. It’s like one line of code to serialize and deserialize.”
Dev: “I don’t know…sounds like magic. Using tokens seems like the more straightforward O-O approach. Thanks anyway.”
I probably getting too old to keep up with these kids, I have no idea what the frack he was talking about. Not sure if they are too smart or I’m too stupid/lazy. Either way, I keeping my name as far away from that project as possible.4 -
As a consultant, you get tasked with a variety of stuff. Last few weeks been struggling to maintain an old C++ application that was written by a complete tool of an a$$hole with zero knowledge on how to write maintainable and production quality code. It would hardly run without a crash. First it was a challenge I had to accept, but as I stabilized the code and just fell over even more traps, I had to admit defeat and review my approach.
Rewrite is something I would choose last, but this one ticked all the marks worthy of a rewrite. So, the customer is a very friendly researcher and gladly spent 15 hours with me explaining all the math and concepts - just a delight for a programmer to have such a customer. Two days in, with a DDD approach - a functional, more precise, faster and stable application.
Sometimes there is no rant to share, it's rare to have that perfect communication with a customer that is so dedicated that he spends so much time teaching you his speciality and actually understand your approach. DDD was really a lifesaver here, by using it's key concepts and ubiquitous language. The program is essentially 8000 lines of math, but wrapping it up with value objects and strong domain models made me understand his domain and him mine. It also allowed me to parallelize the computations, giving me a huge performance boost. Textbook approach, there will not be many like this!4 -
"What tools are needed for eyelash extensions? (eyelash glue, eyelash extension tweezers, etc.)
When applying eyelash extensions, just as important as the extension process itself is choosing the right tools. They not only make the master’s work easier, but also affect the quality and durability of the eyelashes. In this article we will look at what tools are needed for eyelash extensions.
The first and, of course, the most important tool for eyelash extensions is eyelash glue. This glue provides reliable and long-lasting adhesion between natural and artificial eyelashes. It should be hypoallergenic, safe for the skin around the eyes and water resistant. Only correctly selected glue can guarantee safety and beautiful extension results. Therefore, it is important to choose high-quality eyelash glue https://stacylash.com/collections/... that meets all requirements.
The second necessary tool is eyelash extension tweezers. They allow the technician to conveniently and accurately separate natural eyelashes, which facilitates the process of applying and fixing artificial eyelashes. It is important that the tweezers are of high quality, with narrow and sharp tips to ensure precise capture and separation of eyelashes.
The third important tool is tweezers. Tweezers allow the technician to conveniently and accurately place and fix artificial eyelashes on natural ones. It is important that the tweezers have good grip and grip accuracy to ensure precision and accuracy of the extension process.
The fourth necessary tool is a special eyelash brush. It is used to comb eyelashes before the procedure and to remove excess glue after extensions. The brush should be soft, but at the same time securely hold the eyelashes.
The fifth tool is special overhead eye pads. They are used to protect the skin around the eyes and lower eyelashes during the eyelash extension procedure.
So, for successful eyelash extensions you need high-quality eyelash glue, tweezers, tweezers, an eyelash brush and false eye pads. The correct selection and use of these tools will ensure the safety of the procedure and high-quality results. Don’t forget that only a professional approach and high-quality tools can make your look as expressive and attractive as possible."2 -
First story (not rant) :3
So I was asked to set problems for an online programming contest for my college (I'm a sophomore)
The participants were students from my college.
Teacher told me "make as hard as you can"
I gave it my all.
:|
1 person solved the first question. Nobody solved the other four. :|
Not sure if I should be proud or sad.
And if you're wondering - here was my first question -
Sam wants to invest in real estate. He's got X dollars to spend. He knows the expected value per square meter of a given property. He knows the coordinates of the vertices of the polygon shaped properties he's interested in.
(both the values and coordinates for each property are given in input)
Find the maximum return on investment he can get.
(answer is, basically you calculate the area of each polygonal house using half the vector cross product, multiply it with their expected value per square meter, and then apply a dynamic programming - knapsack approach)
;-; I really thought it was a nice question man. ;-; I put so much thought into others too. ;-;
Got ignored. ;-;6 -
You may remember a super long time ago I double-buffered the Windows cmd.exe using c++
tl;dr, here it is in c!
Anyways, I was still learning c++ back then. It wasn't my first project in c++ but it was close and I ran into a lot of issues. The thing worked... but only if you didn't touch it.
Here's the same project (With a lot less bells'n'whistles) written in c. I used a different approach this time, and other than my function naming convention (Which, I honestly don't even know if it's bad or not!), I think this is some pretty solid code!
In the image you see the header file (I used as a summary of the code) and then three x's in a terminal. To do this, the code:
-Creates a ConsoleScreenBuffer handle
-Creates two CHAR_INFO buffers for drawing & displaying
-Draws three x's to the draw buffer
-Copies the draw buffer to the display buffer
-Copies the display buffer to the ConsoleScreenBuffer handle
I'm thinking about cutting out the middle man and removing the display buffer (which holds what is currently displayed) but I think it may actually be useful, and I don't know.
Anyways, I have no friends that understand this stuff so that's why it's here. Cheers.3 -
Ohh man i fucked up bad. 5 days as intern, and i fuck up really bad with my ego and ignorance.
I love my this company. A great environment, lots of people to learn from , i am given reasonable tasks and i feel happy to complete them. But what happened today was weird and fucked up.
I have never worked at a place with seniors designers tech leads and more people with positions. I have also worked with a lot of competitive people who are always in a race to be first.
And how do we come first? Have a lot of knowledge, hear the smallest of detail and sprint towards goal (because the combination your knowledge, assumptions and speed is enough to make you reach to the top). You don't ask for specific details, because they are obvious. And that's me in short.
Today i fucked up.
Mistake #1 ) first i was given a small task by my senior. It was a 20 mins task max if i had done it the normal noobie way . But i am a pro in mind , i have to do it with all the architecture , even if i don't understand why. So i asked for 50 mins. They gave it and did not had a problem with my time, but with the way i wrote my code.
He was like "who told you to make it like this ? Why did you made it like this?" And was visibly irritated. And i was like super chill saying "i don't know the why, but i know its correct way of using it" , pissing him even more. In my eyes he's just a super friendly sr, more like a bro and wouldn't mind some cheeky answers. And he didnt show any
consequences for that time.
Mistake #2 this is super fucked up. Our office is going under some renovation & interns were asked to sit in the co-working spaces (outside of the office). It was already very disturbing and i had to go to office every few minutes.
So after lunch this happens : We are working on a new module that already has a tonne of screens and logics. I have made a small part which is from the middle and now we can go both in the forward or in the backward direction.(Also, its quite a new module whose idea was recently discussed and decided. And weirdly i am also being treated like a core member as the ceo once himself asked what would he my flow for doing things in this. i am in direct contact and under direction of backend , designers , ceo and My senior and many ppl are giving me tasks ) And... Aagh fuck it. .. its a long story and i don't feel like repeating it but
inshort :
got a task,
didn't understood it completely and thought its my task to figure it out, took a long time figuring it my self ,
techlead/designer somehow changed my and my sr. direction of flow even tho we were taking a different approach
I sit in a noisy and irritating place
Techlead/designer comes during the time when i am figuring out the solution(already overtime the one in point #2) nags for result.
I get in an argument with him, justifying for my time and arguing that it's difficult to think technical logics for that design
( truth be told, it WAS a difficult logic which he thought was too easy. It consisted of 3 variables and 8 states we were doing different works for 4 of them and rejecting 2 and ... I don't know, i had got that wrong . But that shouldn't had been my problem to solve. I should have gone to my senior and didn't get into argument with tech lead ). It think i might have offended him too.
After he left, i am so angry on him that after sometime my senior comes and i misbehave with him. He just asks to meet me before i go, and i do so. During the meeting we discuss this whole fuck up and how many times i showed him my ego and indiscipline. And then i realise what a fuckup i did due to my ego and lack of asking, blindly following my own over confidence and blindly following or arguing with others.
Fuck fuck fuck6 -
ME: Here's an endpoint to get all the textual info about the entity. And this one fine endpoint is to fetch entity's files
FrontEnd: This is no good. I need all entity info in a single JSON
ME: but files could be quite heavy, are you sure you wan...
FE: Yes, Just give me all the info in a single JSON
ME: okay... I hope you know what you're doing..
ME: <implemented as requested>
ME: <opens a webpage with 2 files attached>
Browser: <takes 30 seconds to open a page and downloads 30MB of data in the JSON>
ME: As mentioned before, your approach is a performance killer
FE: No worries, we'll fix that in the next version. First let's see if anyone will be using this feature at all - maybe it's not even worth working on
ME: <thinking> I know I would NOT be using an app if it takes over half a minute to open up a chat channel. FFS I wouldn't even be using Slack if it took 30 seconds to open some other conversation, because for some reason it wanted to fetch all the uploaded files along with all the messages each time a channel is clicked on.....
ME: <thinking> this project is doomed :(11 -
I've been thinking about how to answer this for a while, but I'll approach it from a different angle. The time I (nearly) lost faith in my dev future wasn't because of a technology, bad programming language or an external influence. It was *me*.
The first job I had after the PhD, I was (in the first couple of weeks) tasked with updating various packages on a live Redhat server. "No problem", I thought, "I've done this before many a time on Debian, easy as pie!"
Long story short, I ended up practically bricking the server because I mistyped and uninstalled something I shouldn't have, didn't understand a piece of configuration, then tried to bodge it back and cocked things up further. Couldn't even log in via SSH, the hosting company had to be called, a serial connection set up, etc.
To say I was mortified, embarrassed and had my pride dented would be a massive understatement. I seriously thought I'd get fired on the spot, and that I should perhaps change careers to something where I couldn't cock things up as much.
...but you can't think like that, otherwise the world leaves you behind. So I picked myself up, apologised profusely, took some relevant training, double checked everything I was doing on that server in future and got back to work. After a few months of "proving myself", it was then seen as nothing more than a rather amusing story, and I became a senior dev there a couple of years later.1 -
!rant
Need some opinions. Joined a new company recently (yippee!!!). Just getting to grips with everything at the minute. I'm working on mobile and I will be setting up a new team to take over a project from a remote team. Looking at their iOS and Android code and they are using RxSwift and RxJava in them.
Don't know a whole lot about the Android space yet, but on iOS I did look into Reactive Cocoa at one point, and really didn't like it. Does anyone here use Rx, or have an opinion about them, good or bad? I can learn them myself, i'm not looking for help with that, i'm more interested in opinions on the tools themselves.
My initial view (with a lack of experience in the area):
- I'm not a huge fan of frameworks like this that attempt to change the entire flow or structure of a language / platform. I like using third party libraries, but to me, its excessive to include something like this rather than just learning the in's / out's of the platform. I think the reactive approach has its use cases and i'm not knocking the it all together. I just feel like this is a little bit of forcing a square peg into a round hole. Swift wasn't designed to work like that and a big layer will need to be added in, in order to change it. I would want to see tremendous gains in order to justify it, and frankly I don't see it compared to other approaches.
- I do like the MVVM approach included with it, but i've easily managed to do similar with a handful of protocols that didn't require a new architecture and approach.
- Not sure if this is an RxSwift thing, or just how its implemented here. But all ViewControllers need to be created by using a coordinator first. This really bugs me because it means changing everything again. When I first opened this app, login was being skipped, trying to add it back in by selecting the default storyboard gave me "unwrapping a nil optional" errors, which took a little while to figure out what was going on. This, to me, again is changing too much in the platform that even the basic launching of a screen now needs to be changed. It will be confusing while trying to build a new team who may or may not know the tech.
- I'm concerned about hiring new staff and having to make sure that they know this, can learn it or are even happy to do so.
- I'm concerned about having a decrease in the community size to debug issues. Had horrible experiences with this in the past with hybrid tech.
- I'm concerned with bugs being introduced or patterns being changed in the tool itself. Because it changes and touches everything, it will be a nightmare to rip it out or use something else and we'll be stuck with the issue. This seems to have happened with ReactiveCocoa where they made a change to their approach that seems to have caused a divide in the community, with people splitting off into other tech.
- In this app we have base Swift, with RxSwift and RxCocoa on top, with AlamoFire on top of that, with Moya on that and RxMoya on top again. This to me is too much when only looking at basic screens and networking. I would be concerned that moving to something more complex that we might end up with a tonne of dependencies.
- There seems to be issues with the server (nothing to do with RxSwift) but the errors seem to be getting caught by RxSwift and turned into very vague and difficult to debug console logs. "RxSwift.RxError error 4" is not great. Now again this could be a "way its being used" issue as oppose to an issue with RxSwift itself. But again were back to a big middle layer sitting between me and what I want to access. I've already had issues with login seeming to have 2 states, success or wrong password, meaning its not telling the user whats actually wrong. Now i'm not sure if this is bad dev or bad tools, but I get a sense RxSwift is contributing to it in some fashion, at least in this specific use of it.
I'll leave it there for now, any opinions or advice would be appreciated.question functional programming reactivex java library reactive ios functional swift android rxswift rxjava18 -
I want to explain to people like ostream (aka aviophille) why JS is a crap language. Because they apparently don't know (lol).
First I want to say that JS is fine for small things like gluing some parts togeter. Like, you know, the exact thing it was intended for when it was invented: scripting.
So why is it bad as a programming language for whole apps or projects?
No type checks (dynamic typing). This is typical for scripting languages and not neccesarily bad for such a language but it's certainly bad for a programming language.
"truthy" everything. It's bad for readability and it's dangerous because you can accidentaly make unwanted behavior.
The existence of == and ===. The rule for many real life JS projects is to always use === to be more safe.
In general: The correct thing should be the default thing. JS violates that.
Automatic semicolon insertion can cause funny surprises.
If semicolons aren't truly optional, then they should not be allowed to be omitted.
No enums. Do I need to say more?
No generics (of course, lol).
Fucked up implicit type conversions that violate the principle of least surprise (you know those from all the memes).
No integer data types (only floating point). BigInt obviously doesn't count.
No value types and no real concept for immutability. "Const" doesn't count because it only makes the reference immutale (see lack of value types). "Freeze" doesn't count since it's a runtime enforcement and therefore pretty useless.
No algebraic types. That one can be forgiven though, because it's only common in the most modern languages.
The need for null AND undefined.
No concept of non-nullability (values that can not be null).
JS embraces the "fail silently" approach, which means that many bugs remain unnoticed and will be a PITA to find and debug.
Some of the problems can and have been adressed with TypeScript, but most of them are unfixable because it would break backward compatibility.
So JS is truly rotten at the core and can not be fixed in principle.
That doesn't mean that I also hate JS devs. I pity your poor souls for having to deal with this abomination of a language.
It's likely that I fogot to mention many other problems with JS, so feel free to extend the list in the comments :)
Marry Christmas!34 -
I gotta say, I actually admire the work that content creators must go thru to make quality content.
So as I stated before I’m working on YouTube channel, under the name “TheSoftwareSage” ... to create tutorials and a way of me teaching software the way I believe it should be taught, not how the mainstream methods of today are.
Bottom up approach rather than top down
(Must start with a firm understanding of the foundation.. and build upon the knowledge as we go thru the layers of abstraction but the key concepts must be understood first)
Anyway, I’m working on this in my spare time and I was not aware of how much effort I would actually need todo this right haha. At first I figured I’d just screencast a monitor and have a ppt or text editor or terminal open and that stuff and just do it.
As In person with my interns I never have “planned” lessons or content is all impromptu based on the need at the time and I just go with it, with their computers and a whiteboard lol.
I was wrong for video recording lol... maybe it’s OCD... or perfectionism, I’ll make a video, review it like 5times and then be like shit I forgot to mention this or that or I didn’t like how I explained this or that
OR
I keep worrying too much about colors, and sound levels and quality and transitions and video angles and all this other shit.
And then post editing fuck.... I’m about ready to say fuck it and “do it live .. one shot” and just upload the end result.
I guess this would be in the content world similar to our “paralysis analysis” notion.10 -
During my job hunt as a Java Developer looking for job while on a job just like what every other developers do, around twenty twelve i got an invite from one of the companies i applied for, i wasn't expecting a test though but i was prepared for it anyway. The test proceeds, i and the other partakers were given separate systems and spread out across the room like teams in a football match, i don't know if they planned on making us nervous, it seemed so very awkward. First question was *Who originally developed Java (like seriously???? i almost cummed!) i skipped... skip skip skip. After so many skipping minutes i then arrived at that question ***Check string for palindrome, hmmm i then noticed my system was connected to an open wifi (don't know if it was a dumb mistake or on purpose). I definitely googled and faithful loving heavens i found the website were they got all 21 questions with their answers from (https://simpleprogrammer.com/progra...). I answered all questions using different approach, applied xml commenting, state possibility and outcome of each code block, added wiki references, i flawed the test. Few days later i received a call for final interview, got there and the interviewer was like "Do you teach/lecture on coding or something? cus you really did pretty good on the test the other day", I felt like a god and was like "no, i don't. just did what i had to do". Seems like he loved my reply and i got the job without a second question. The open network is still a mystery to me till date.6
-
So I met this person via a social platform.
They were absolutely silly and weren't able to hold a conversation. So I, like a normal person, just stopped trying to keep things alive.
Over the years, I have realised and learnt that if a person is interested in being friends, they'd put in efforts and I alone will not have to drag things on my shoulder.
I started cutting out people right, left, and center who I felt were taking advantage of me or using me in some way or another.
I ended up saving a lot of time and energy. I no longer feel drained or anxious about something not working out. Not dragging saved me from draining.
Anyway, they reach out to me again after few weeks and I was like let's give it a try to establish a friendship, because befriending people is my weak point.
The cycle repeats. At first I thought it must be because of the asynchronous nature of the platform so I drop my Telegram Id in case they preferred an IM approach.
I swear in the name of sweet lord, the retard does the same behaviour. So, I stopped communication.
And one fine day, the person tells me that they lack social skills and want to learn how to make friends and stuff.
Very fair point. So, me being me, gave them a few tips and critically pointed out their behaviour on how they reply with a one liner after every 2 or 3 business days.
Absolutely no change in their behaviour. They kept texting me the same.
At this point, I was like why am I doing it? I could find better people easily. Because for me, communication is everything. I cannot function without a good communication between two living beings.
So, I asked them why are they even trying to learn social skills when they barely implement it and don't want to change to which they reply saying that so they can use it to befriend people and network to getter better job opportunities.
I fuck them off.
And fuck such people who have intentions, are not clear enough about it, and play people for their own selfish gains.
And this where another learning I got from @scout is have boundaries.
Why do all good people in my life leave? Damn it! I need those good people back and be friends with them and not retards who cannot even communicate beyond one liner.11 -
I learned how to program during my MSc at UC Santa Barbara in 1988. But the real thing happened during my first job as software engineer at Chorus Systems, in Paris, with the guidance of some of the world's best mentors, Russian engineers who taught me how to approach code design as if it was playing chess. These guys were brilliant!2
-
I had some fun with ChatGPT today. I wondered how good its problem solving skills are. Turns out, it's no better than an entry/junior dev armed with all the docs out there - it knows what's written there, how to use the thing (language/framework/tool/etc.), but it has no "understanding" neither of the problem nor the tool, in a holistic way. It's got the knowledge, but it neither has the skill nor understanding of how/why to use it to solve a problem (any problem beyond plain simple complexity).
So the problem I asked it to solve was related to this one I had: https://devrant.com/rants/6312527 .
It was painful to troubleshoot this problem with ChatGPT. It kept on focusing on this particular problem and reacting to errors while trying to fix its initial solution. It took us a good while. Eventually, it reached a working solution, but it was an ugly, convoluted approach that was not feasible to cover my use case with.
FWIW I think it is interesting to follow its line of thought. Eventually, a pattern emerges of how it tries to solve the problem. And it reminds me a lot of myself on the first week in the IT field :)6 -
probably every time I see my tests failing.
Each time I am writing tests I'm convincing myself "it's an investment", "spend 2 hours now to save 2 days later", "unit-tests are good".
And each time I'm chasing away ideas like "perhaps they are right, perhaps writing unit tests is a waste of time..", "this code is simple, it should ever break - why test it??", "In the 2 hours I'll spend writing those UT I could build another feature"
Yes, it is terribly annoying to write tests, especially after writing the production code (code-first approach). Why test code that you know works, right?
But after a few weeks, months or years, when the time comes to change your feature: enhance it, refactor it, build an integration with/from it, etc, I feel like a child who found a forgotten favourite candy in his pocket when I see my tests failing.
It means I did a very good job writing them
It means it was not a waste of time
it means these tests will now save me hours or days of trial-and-error change→compile→deploy→test cycles.
So yeah, whenever I see my tests fail, I feel warm and fussy inside :)2 -
I don't profess to know the whole story, but what is it with the (what seems to me to be) overly-fragile, cry-bully mentality of the Node.js community and its various branches? The current mess is not the first time strongly opinioned, overly zealous loud-mouths have driven the ship.
Throughout the history of time, teams/groups of people have been made up of different characters. Some are nice, some aren't really and everyone has varied characteristics. There seems to be a drive to completely flatten the behaviour, beliefs and attitudes of any sort of gathering, and it makes me so mad. Some people are so obsessed with their ideas of equality, diversity, inclusivity and safe spaces that they can't see how negative and discriminating those attitudes actually are.
I fully accept that certain behaviours should not be tolerated and should be called out. And communities and societies will organically decide what those are.
But when you raise an issue, approach it like grown up and thrash it out to a resolution - don't throw your toys out of the pram and put on a real public show, targeting and scapegoating other individuals when you don't get your way! This is childish and narcissistic. If this is your only course of action, you should realise you haven't a strong argument.
I've ranted here before about how the mainly social media discussions on any subject drive us all to extreme ends. And this is just another example. It's wrong and narrow minded and not remotely progressive - the opposite of what those who should loudest claim to be.3 -
Not really a rant and not very random. More like a very short story.
So I didn't write any rant regarding the whole Microsoft GitHub topic. I don't like to judge stuff quickly. I participated in few threads though.
Another thing is I also don't use GitHub very much apart from giving 🌟 to repos as a bookmark. Have one hobby project there. That's all. So I don't worry that much. I'm that selfish and self concerned. :3
I was first introduced to version control system by learning how to use tortoisesvn around 2008. We had a group project and one of the guys was an experienced and amazing programmer unlike the rest of us. He was doing commercial projects while we were at our 1st and 2nd year. Uni had svn repo server. He taught us about tortoisesvn. He also had Basecamp and taught us how to use it as well. So that's how I learned the benefits of using versioning tools and project management tools. On side note, our uni didn't teach any of those in detail :3
After that project, I was hooked to use versioning tools. So until school kicked me out, I was able to use their svn server. When I was on my own, I had to ask Google for help. I found a new world. There are still free svn services that I can use with certain limited functions. That's not the new world; I found people saying how git is better than svn in various ways. It was around 2010,2011.
At first I was a bit reluctant to touch git because of all the commands in terminal approach. But then I found that there is tortoisegit. I still thank tortoisesvn creator for that. I'm a sucker for GUI tools. So then I also have to pick which git servers to use. Hell yeah, self hosted gitlab is the way to go man. Well that's what the internet said. So I listened. I got it up and running after numerous trial and error. I used it briefly. Then I came back to my country on 2012-2013; the land of kilobytes per minute (yes not second, minute).
My country's internet was improved only after 2016. So from 2013 to 2016, I did my best not to rely on internet. I wasn't able to afford a server at my less than 10 people, 12ft*50ft office. So I had to find alternative to gitlab which preferably run on windows. Found bonobo and it was alright. It worked. Well had crazy moments here and there when the PC running Bonobo got virus and stuff. But we managed. We survived. Then finally multi national Telecom corporates came to our country.
We got cheaper and faster mobile data, broadband and fiber plans. Finally I can visit pornhub ... sorry github. Github is good. I like it. But that doesn't mean I should share my ugly mutated projects to the rest of the world. I could keep using Bonobo but it has risks. So I had to think for an alternative. I remembered that gitlab didn't have cloud hosting service when I checked them out in the past. So I just looked into Bitbucket and happy with their free plans of 5 users and unlimited private repos. I am very very cheap and broke.
That's why I said I don't really care that much about the whole M$GitHub topic at the beginning. However due to that topic, I have visited GitLab website again and found out they have cloud hosting now and their free plan is unlimited users and unlimited repos. So hell yeah. Sorry BB. I am gonna move to cheaper and wider land.
TL;DR : I am gonna move to GitLab because of their free plan.4 -
So I began at my first programming job as an intern and it was as bad as it gets but I kept going, thinking that this was normal. After my internship I continued to work full-time at the same company and was working on new functionality on their legacy product build in ASP Classic and their shitty inhouse front-end framework (which btw used eval to evaluate strings in so called queues). So I was assigned a task to create a module which needed some available data in the database. I was discussing my ideas with my supervisor and she didn't let me finish and began speaking on how I should get the data needed. My approach was much more clean and used only one request and hers used two. So I heard what she had to say and I wanted to finish what I was about to say before she interrupted me but she did it again. I go nervous but let her finish once again. After that she left me to work on my task and I did it the way thought was right (and it was). After she saw my approach she was furious because I didn't talk it over with her and she said that she don't think that we can work together if I continue to work like this. I felt how my head filled with blood but I kept calm. If I had opened my mouth I would surely get fired. But I didn't open my mouth and quit after one or two months. She was a real bitch that day...1
-
The interview I was so nervous about apparently went well. It’s a small ad company.
I was offered a month long “work trial” period.
Problem is I was caught off guard with discussing compensation & what I agreed to is less than half what the average dev makes in my state.
Like barely above min wage
I feel much less excited about this but this would be my first job in a loooong time.
I’m not sure how to feel but I think I have to at least try, but I feel taken advantage of already!
Is that bad? What would you guys do? How would you approach this before sending any signed commitments back?
Ugh!!!!!10 -
*Nervous student comes in for the first interview I am conducting as a developer*
Me (as an interviewer): What is best approach to search data?
Student: It will take linear time but if data is sorted, we can do it in logarithmic time.
Me: [Smiles] Take a hint Hash Map?
Student: Yes, with it, we can do it in constant time.
Me: Okay, Bloom Filter anytime?
Student: *sweating* noooo...
Me: Okay. I am a developer so I know this.
Student: *about to cry*
Me: No problem but why will you search data when there is no problem? Don't you have better work.
Student: *confused* yup
Me: *laughs but immediately controls* Take it lightly. You know what you need to do this job. You are HIRED. :)2 -
In Rx, what is the point of returning Single for all of our networking request responses, if every call to that method, first of all converts it to an Observable so that it can use flatMap, filters, combineLatest etc.
I get that Observable's have more overhead, Single can only return once, thats all clear. But is it not MORE overhead to create a Single, return it, convert it and now have the Observable we were trying to avoid in the first place.
I don't know if its just Rx I don't like, or how the team here is using it. But it is pissing me off, to no end, how massively overly complicated this is. It really feels to me like this is following a textbook approach while ignoring all the practical details.
<rant>
Next person to say "because its the Rx way", is getting a monitor thrown at their head.
</rant>6 -
Because when you built the UI and you watch how the end user interact with it, it’s like watching your kid approach their first love, or like watching moon rover landing except you designed and built the whole program by yourself.
It’s just magical.1 -
New models of LLM have realized they can cut bit rates and still gain relative efficiency by increasing size. They figured out its actually worth it.
However, and theres a caveat, under 4bit quantization and it loses a *lot* of quality (high perplexity). Essentially, without new quantization techniques, they're out of runway. The only direction they can go from here is better Lora implementations/architecture, better base models, and larger models themselves.
I do see one improvement though.
By taking the same underlying model, and reducing it to 3, 2, or even 1 bit, assuming the distribution is bit-agnotic (even if the output isn't), the smaller network acts as an inverted-supervisor.
In otherwords the larger model is likely to be *more precise and accurate* than a bitsize-handicapped one of equivalent parameter count. Sufficient sampling would, in otherwords, allow the 4-bit quantization model to train against a lower bit quantization of itself, on the theory that its hard to generate a correct (low perpelixyt, low loss) answer or sample, but *easy* to generate one thats wrong.
And if you have a model of higher accuracy, and a version that has a much lower accuracy relative to the baseline, you should be able to effectively bootstrap the better model.
This is similar to the approach of alphago playing against itself, or how certain drones autohover, where they calculate the wrong flight path first (looking for high loss) because its simpler, and then calculating relative to that to get the "wrong" answer.
If crashing is flying with style, failing at crashing is *flying* with style.15 -
Re-reading old code I wrote some time ago and trying to improve it. It sounds and it definitely is scary to do at first, but it truly helps me approach things from a different perspective and question what I did.
-
Whatever the task needs.
New paradigm? Probably a book first approach.
Library/API: their own suggested tutorials and references cause that shit moves quick.
If I have to read a cave painting to understand an ancient card punch language I’ll happily do it.
I’ve found, when I don’t know something yet I get the “brick wall” feeling, that this is all going to be too difficult... I’ve learned to love that feeling.
If all else fails: RTFM. -
I FUCKING GIVE UP!
Yep I'm pissed of :D I spend the last two months waiting like a idiot some business to answer about their job offers (more or less 3 in my area..)
Well I failed the last test of the first one, it was expected I guess. Lot of things happened but let's say I didn't use the approach that they were hoping me to use (you could have tell me you know...).
So... There is even one of the job offer, I called them already twice. Asking when they will call back. Each time it was : this week or the week after. Yeah I think that makes 5/6 weeks since the first time I called now...
But the thing which really piss me of. Is that I was waiting like a idiot, doing mostly nothing. Like if I couldn't focus on my projects before that I get a job... Well I guess when everyone is asking about when you will have a job or a girlfriend, that's not the atmosphere that I love to work with T. T
Oh yeah, no dev related. But I fall in love with a Russian girl (I'm a French guy btw). I completely messed up the relationship though xD well no way that I'm giving up anyway. And that's mostly thanks to her that I just woke up of that shitty period ^^
Sooo I started to gather people from all over the world on LinkedIn. Checking job offers on StackOverflow. And Monday I'll start writing some post on LinkedIn searching for a job in the whole fucking world. I hope there will have a business who wants a junior C++ dev :P Remote probably, I'd like to travel easily (yeah, I probably want to go to Russia a little too xP)
That's all :D I FUCKING GIVE UP ABOUT WAITING DOING NOTHING LIKE A IDIOT!!!9 -
I know everyone hates when people ask them for help with fixing IT related stuff.
I have a different approach to all similar questions. I don't get upset or anything, I just tell them that the device they have is a little bit shit, and suggest them buying a new expensive one that is better and will do all that. Your router isn't working as you want? Buy a Cisco (a real one with $1k+ price tag, not that Cisco branded Linksys garbage). Your printer isn't working as you want? Buy some high end Brother stuff. Etc...
After first few times they just stop asking...2 -
Ok, so I need some clarity from you good folk, please.
My lead developer is also my main mentor, as I am still very much a junior. He carved out most of his career in PHP, but due to his curious/hands-on personality, he has become proficient with Golang, Docker, Javascript, HTML/CSS.
We have had a number of chats about what I am best focusing on, both personally and related to work, and he makes quite a compelling case for the "learn as many things as possible; this is what makes you truly valuable" school of thought. Trouble is, this is in direct contrast to what I was taught by my previously esteemed mentor, Gordon Zhu from watchandcode.com. "Watch and Code is about the core skills that all great developers possess. These skills are incredibly important but sound boring and forgettable. They’re things like reading code, consistency and style, debugging, refactoring, and test-driven development. If I could distill Watch and Code to one skill, it would be the ability to take any codebase and rip it apart. And the most important component of that ability is being able to read code."
As you can see, Gordon always emphasised language neutrality, mastering the fundamentals, and going deep rather than wide. He has a ruthlessly high barrier of entry for learning new skills, which is basically "learn something when you have no other option but to learn it".
His approach served me well for my deep dive into Javascript, my first language. It is still the one I know the best and enjoy using the most, despite having written programs in PHP, Ruby, Golang and C# since then. I have picked up quite a lot about different build pipelines, development environments and general web development as a result of exposure to these other things, so it isn't a waste of time.
But I am starting to go a bit mad. I focus almost exclusively on quite data intensive UI development with Vue.js in my day job, although there is an expectation I will help with porting an app to .NET Core 3 in a few months. .NET is rather huge from what I have seen so far, and I am seriously craving a sense of focus. My intuition says I am happiest on the front end, and that focusing on becoming a skilled Javascript engineer is where I will get the biggest returns in mastery, pay and also LIFE BALANCE/WELLBEING...
Any thoughts, people? I would be interested to hear peoples experiences regarding depth vs breadth when it comes to the real world.8 -
Hate grows inside my soul when you are talking about a new feature and it's implications in the code base. Then you suggest a first approach, everyone agrees but one, someone whos rotten soul is craving for bloodshed, someone who says something like "Hell now, that's too much work" and then after hours of arguing he/she/it proposes the exact same approach... saying it's a better way.
-
So I want to build myself a custom buttonbox for star citizen and warthunder, my hotas really doesn't have enough or fittingly placed buttons for either of those games. What would be the best approach for this?
My first thought was to take an arduino or some AVR chip on an USB connection and write a custom JoyStick driver but that would be a major pain on the buttocks.
Also would I buy an Arduino or go full custom stuff and buy some chip from TI and DIY the board completly?
On the other hand if I'm gonna tinker with stuff on my own time I propably should pick up an ARM processor so I get familiar with the architecture, but that's propably overkill.
But 8-bit AVR is so constrained so maybe if I want to expand and create something like an MFD the poor 8266 would propably just go up in flames.
Has anybody a better idea or knows some ready to rock board for this kinda stuff? Best case scenario with a Joystick driver or something?8 -
This talk by Rich Hickey had a tremendous influence in how I approach my work:
https://youtu.be/f84n5oFoZBc
His Hammock Driven Development is my absolute favorite when it comes to work principles in programming/engineering. It also the one that is the hardest to explain to most PMs and leads because it can look like you are slacking off while others are producing hundreds LOCs. That you'll write better, less error prone code that won't need as much QA iterations is something you first have to prove to them but to me, it's well worth the effort.
If you have 40 minutes of time, do yourself a favor and watch the video. Maybe it'll have as much influence on you as it had on me 😃 -
Just got told by our designer that I was wrong about the "mobile first" approach when designing web applications. She insisted that creating unique pages for each platform was the best way.
I must have missed that memo.1 -
The most difficult esoteric programming language is not Brainfuck. It is Malbolge:
"It took two years for the first Malbolge program to appear. The author himself has never written a Malbolge program. The first program ["Hello World"] was not written by a human being; it was generated by a beam search algorithm (...)"
(https://en.wikipedia.org/wiki/...)
So basically it took a brutforce try-and-error approach to write "Hello World". Absolutely crazy! Imagine malware written like that 🤖4 -
First time used the TDD approach. I knew I needed to use it but never quite used it cause I thought it would slow me down. I was so wrong!
Mocha and chai js rock 🤘5 -
TLDR: Detect site visitors browser and conditionally load a Citrix frame rather than rendering the site
The request came about 3 days after launching a new project to production. For several months before that moment we had reviewed and confirmed the supported browser matrix. As you might guess plans tend to go up in smoke as we approach and pass launch. Now that we're live after all, it would be the tine to lose our damn minds rather than bask in the warmth of a successful launch for 5 minutes.
Anyway as for the actual request, after those first few days the client PM realized a FEW people were actually using IE8 and was now panicking that it was unsupported. On my way out of the building that day he asked if we could detect the browser and rather than render the site load a frame to a Citrix session that would be running the latest IE... -
When an interviewer asks, what are the steps that you take usually when given a task to do something, what do you guys say?
I said, I devote 10-20% of the time to understand the given problem - sit and explore all possible scenarios to handle, then develop a brute Force approach, improve the approach to make it more efficient, see if it handles all edge and corner cases, then write test cases for it.
( I'm thinking, the process doesn't vary a lot for most of the people?, Except in TDD - one'll write the test cases first)
How would you answer this question?
I have this feeling that I messed up something 🤔8 -
This is sort of a boring story. I always have been interested in making games but actual coding always made me very uncomfortable and never tried it until I got to college. I met some really cool guys there and got into an association that was based on pop culture and videogames. Me and the president of that association started on our spare time to code for a videogame. He made his and I made mine. The software I used was gamemaker studio and I made like 7 games. I wanted to make a website for the games so I learned HTML, CSS and JavaScript. At that first year I was studying criminal justice and was slowly being taken away by programming. I changed my concentration to computer information system thinking that I wanted to do a more general approach but programming kept gaining ground. I had depresion on middle School all through highschool and early college. I'm safe to say that after I decided to code seriously my depression has seize to exist and life feels very good. Coding for me is very rewarding and challenging. I'm soon going to pursue a bachelor degree in computer science and hope I don't change concentration again.2
-
So if anyone is interested or has read or listened to The 48 laws of power....
https://youtu.be/pSWIVupPAKI
I'm 40 minutes in and at first I was in denial...
"No people are better than this now, we can transcend this kind of behavior and thinking, I don't need to act this way and follow the lessons in this book"
And now that I'm through a couple laws and I apply it to my marriage, friendships, my job, etc. I'm like SHIT this really is human nature isn't it....damn it.
I really need to start applying this book to how I approach life lol3 -
So I recently finished a rewrite of a website that processes donations for nonprofits. Once it was complete, I would migrate all the data from the old system to the new system. This involved iterating through every transaction in the database and making a cURL request to the new system's API. A rough calculation yielded 16 hours of migration time.
The first hour or two of the migration (where it was creating users) was fine, no issues. But once it got to the transaction part, the API server would start using more and more RAM. Eventually (30 minutes), it would start doing OOMs and the such. For a while, I just assumed the issue was a lack of RAM so I upgraded the server to 16 GB of RAM.
Running the script again, it would approach the 7 GiB mark and be maxing out all 8 CPUs. At this point, I assumed there was a memory leak somewhere and the garbage collector was doing it's best to free up anything it could find. I scanned my code time and time again, but there was no place I was storing any strong references to anything!
At this point, I just sort of gave up. Every 30 minutes, I would restart the server to fix the RAM and CPU issue. And all was fine. But then there was this one time where I tried to kill it, but I go the error: "fork failed: resource temporarily unavailable". Up until this point, I believed this was simply a lack of memory...but none of my SWAP was in use! And I had 4 GiB of cached stuff!
Now this made me really confused. So I did one search on the Internet and apparently this can be caused by many things: a lack of file descriptors or even too many threads. So I did some digging, and apparently my app was using over 31 thousands threads!!!!! WTF!
I did some more digging, and as it turns out, I never called close() on my network objects. Thus leaving ~30 new "worker" threads per iteration of the migration script. Thanks Java, if only finalize() was utilized properly.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 -
Perhaps as a tip for the junior devs out there, here's what I learned about programming skills on the job:
You know those heavy classes back in college that taught you all about Data Structures? Some devs may argue that you just need to know how to code and you don't need to know fancy Data Structures or Big o notation theory, but in the real world we use them all the time, especially for important projects.
All those principles about Sets, (Linked) lists, map, filter, reduce, union, intersection, symmetric difference, Big O Notation... They matter and are used to solve problems. I used to think I could just coast by without being versed in them.. Soon, mathematics and Big o notation came back to bite me.
Three example projects I worked in where this mattered:
- Massive data collection and processing in legacy Java (clients want their data fast, so better think about the performance implications of CRUD into Collections)
- ReactJS (oh yes, maps and filters are used a lot...)
- Massive data collection in C# where data manipulation results are crucial (union, intersection, symmetric difference,...)
Overall: speed and quality mattered (better know your Big o notation or use a cheat sheet, though I prefer the first)
Yes, the approach can be optimized here, but often we're tied to client constraints, with some room if we're lucky.
I'm glad I learned this lesson. I would rather have skills in my head and in memory than having to look up things and try to understand them all the time.5 -
i have an idea today for find job as Junior:
First of all, startups usually hire senior devs only for two reasons:
1) is critical to their business, they need people that will ensure the project will be done no matter what, seniors usually brings that to the table.
2) The startups that raise some founding, usually have 100k+ raised, that money is basically enough for hire Seniors for some time without troubles, taking into account they will usually be highly profitable in the mid term, it is not a big deal to take the risk
Today startups, at least the most interesting ones, play the game in God Mode due to that founds raising, it is like having a max level character in some MMO with insane amounts of gold, you will buy only the best gear with that gold, not the low level gear, why you want to buy low level stuff, if you can buy the best of the best? that is why Juniors are not likely to have a place in startups, they can pay the Seniors.
But, there a situation in what an startup will wish to hire some Juniors, this is situation is, when they have never raised founds, they have no Cheat Mode, this ones are usually startups that have just few weeks or months of being created, and they need the MVP ASAP, this startups usually already have one or two Mid/Senior level engineers, but they have a very highly benefit from having a Junior in their team, this guy will no take any part in the Cake, will only work for lot less money and will discharge some stuff from the Seniors (Taking into account that is a minimum competent Junior).
Here is where Juniors can get jobs, at least for start their careers, and taking into account that thousands of new startups are created every year, this is a major market.
Ok, i already test that this approach if viable, i send requests to 5 startups that meets the conditions, and got response from 4! still not make a deal, but this is a lot more than 0 response after 2 dozen of applications to more stablished startups.
What you think about this? maybe this is just the jobless syndrome attacking me fuck8 -
Typical insurance company BS approach.
Listening to xmas music, Spotify ad kicks in about 'just being "hacked"':
Buy our cyber security insurance product to quickly recover and retain liquidity in case of a cyber security beach.
Not a single word about preventing the incidents in the first place...
Lucky to work in a place that doesn't skimp on IT.5 -
You know something's truly off when you're being challenged for all the wrong reasons. When all it seems you ever do is apply a band-aid every time instead of making the time to fix it properly and for good. Or when the people who should be making your work easier to do instead suggest new tools and features to integrate into your workflow or project because they plug the holes in their management process and can ignore the leaks for the time being.
I need to push myself out of this place and ramp up my skills and update my personal projects so I can prove myself capable and move on to a better employer. Because I'm starting to hate the stopgap short-term approach that keeps getting shoehorned into our work, and only proceeds to make us look bad even if it's the whims of our bosses causing it in the first place.
Thanks for reading. -
That feeling when your friends' college life kind of depends on you helping them out in this assignment using a low level programming language (low level means it was meant to operate on the machinery level) that you were really good in at the first semester. Then you realize that you have forgotten a lot of things just because the logic and approach ist totally different from the high level programming language and you forget how a programming language works once you stop using it and it takes time to dive back in and you really like being friends with them. Now all you're left with is with the fear of letting them down.
-
How to approach job applications for EU and US market?
I have applied at multiple places and have never made it even to the first stage. The jobs I apply for, pretty much match my experience level and stack.
Does this have something to do with visa issues since I am from the Middle East?
Or is there something else I am possible missing out on.23 -
So... I’ve recently started a new role, and luckily I’ve established myself as someone that knows his shit (more or less) TM.
I’m leading the charge on tech debt, and raising issues about it, first on my radar is the monstrosity of their approach to app config.
It’s a web app, and they store config in a key-value table in the database.
Get this. The key is the {type}.{property} path and this is fetched from the database and injected *at construction* via reflection.
Some of these objects get instantiated dozens of times per-request. Eurgh. -
Hopefully get out to the public the two projects I have been working on currently. A local focused startup help website and a local focused fillable forms platform.
And hopefully get my first large scale software project kickstarted - A retail management system on a full Feedback Driven Development approach perhaps with the ability to integrate AI and ML later on. -
It's sort of two separate projects although they are very tightly related.
The first is a pattern combination library and parsing engine. It takes a superficially similar approach to Regex or parser combinators, but with some important underlying differences.
The second is a specialized (not turing complete) language for rapidly defining full language grammars and parsers/lexers for those languages. -
Six months ago, I architected a solution that I thought was pretty darn good. Of course my boss didn't agree and basically twisted my arm until I agreed to go along with his approach. Today, he's walking back on it.. and telling us we can refactor the solution if it doesn't make sense anymore.. so back to my original solution?
If only he listened in the first place.. -
I hate the word "Proactive"
What does that even mean? You add the prefix pro- to the word "active" and you get the same thing! Why not just say active?!
We're talking an active approach
We're taking a proactive approach
See, they mean the same thing and the first version doesn't make you sound like a douche.12 -
What's the best way to ask my IT manager for a first year review? What's the best way to approach it from a junior position where I feel I'm being underpaid and overworked?3
-
DECENTURION
THE FIRST DECENTRALIZED AUTONOMOUS SOCIETY
THE FIRST FULLY DECENTRALIZED STATE IN WHICH ECONOMY, GOVERNANCE AND COMMUNICATIONS ARE BUILT ON A blосkсhаin. DECENTURION’S SYSTEM OF VALUES PUTS ITS OWN RESIDENTS IN THE EPICENTER. THIS APPROACH DETERMINES THE KEY PRINCIPLES OF THE DOMESTIC POLICIES OF THE STATE
https://decenturion.com/6 -
Web browsers removed FTP support in 2021 arguing that it is "insecure".
The purpose of FTP is not privacy to begin with but simplicity and compatibility, given that it is widely established. Any FTP user should be aware that sharing files over FTP is not private. For non-private data, that is perfectly acceptable. FTP may be used on the local network to bypass MTP (problems with MTP: https://devrant.com/rants/6198095/... ) for file transfers between a smartphone and a Windows/Linux computer.
A more reasonable approach than eliminating FTP altogether would have been showing a notice to the user that data accessed through FTP is not private. It is not intended for private file sharing in the first place.
A comparable argument was used by YouTube in mid-2021 to memory-hole all unlisted videos of 2016 and earlier except where channel owners intervened. They implied that URLs generated before January 1st, 2017, were generated using an "unsafe" algorithm ( https://blog.youtube/news-and-event... ).
Besides the fact that Google informed its users four years late about a security issue if this reason were true (hint: it almost certainly isn't), unlisted videos were never intended for "protecting privacy" anyway, given that anyone can access them without providing credentials. Any channel owner who does not want their videos to be seen sets them to "private" or deletes them. "Unlisted" was never intended for privacy.
> "In 2017, we rolled out a security update to the system that generates new YouTube Unlisted links"
It is unlikely that they rolled out a security update exactly on new years' day (2017-01-01). This means some early 2017 unlisted videos would still have the "insecure URLs". Or, likelier than not, this story was made up to sound just-so plausible enough so people believe it.50 -
When Do You Stop Taking Responsibility?
Let me clarify by describing four scenarios in which you are tasked with some software development. It could be a large or small task. The fourth scenario is the one I'm interested in. The first three are just for contrast.
1. You either decide how to implement the requirements, or you're given directions or constraints you agree with. (If you hadn't been given those specific directions you probably would have done the same thing anyway.) **You feel accountable for the outcome**, such as whether it works correctly or is delivered on time. And, of course, the team feels collectively accountable. (We could call this the "happy path.")
2. You would prefer to do the work one way, but you're instructed to do it a different way, either by a manager, team lead, or team consensus. You disagree with the approach, but you're not a stubborn know-it-all. You understand that their way is valid, or you don't fully understand it but you trust that someone else does. You're probably going to learn something. **You feel accountable for the outcome** in a normal, non-blaming sort of way.
3. You're instructed to do something so horribly wrong that it's guaranteed to fail badly. You're in a position to refuse or push back, and you do.
4. You're given instructions that you know are bad, you raise your objections, and then you follow them anyway. It could be a really awful technical approach, use of copy-pasted code, the wrong tools, wrong library, no unit testing, or anything similar. The negative consequences you expect could include technical failure, technical debt, or significant delays. **You do not feel accountable for the outcome.** If it doesn't work, takes too long, or the users hate it, you expect the individual(s) who gave you instructions to take full responsibility. It's not that you want to point fingers, but you will if it comes to that.
---
That fourth scenario could provoke all sorts of reactions. I'm interested in it for what you might call research purposes.
The final outcome is irrelevant. If it failed, whether someone else ultimately took responsibility or you were blamed is irrelevant. That it is the opposite of team accountability is obvious and also irrelevant.
Here is the question (finally!)
Have you experienced scenario number four, in which you develop software (big as an application, small as a class or method) in a way you believe to be so incorrect that it will have consequences, because someone required you to do so, and you complied *with the expectation that they, not you, would be accountable for the outcome?*
Emphasis is not on the outcome or who was held accountable, but on whether you *felt* accountable when you developed the software.
If you just want to answer yes or no, or "yes, several times," that's great. If you'd like to describe the scenario with any amount of detail, that's great too. If it's something you'd rather not share publicly you can contact me privately - my profile name at gmail.com.
The point is not judgment. I'll go first. My answer is yes, I have experienced scenario #4. For example, I've been told to copy/paste/edit code which I know will be incomprehensible, unmaintainable, buggy, and give future developers nightmares. I've had to build features I know users will hate. Sometimes I've been wrong. I usually raised objections or shared concerns with the team. Sometimes the environment made that impractical. If the problems persisted I looked for other work. But the point is that sometimes I did what I was told, and I felt that if it went horribly wrong I could say, "Yes, I understand, but this was not my decision." *I did not feel accountable.*.
I plan on writing more about this, but I'd like to start by gathering some perspective and understanding beyond just my own experience.
Thanks5 -
!rant
27 days ago I asked here for advice on how to mentor software engineer student that was terrible at coding.
So, we are in the middle of the mentoring, my approach is for her to get used to normal engineering tools, in this occasion she is learning Git and "kanban" (basically we are using Clubhouse for this one) and Github PR submission and approval (I'm the one who approves them, naturally) by doing.
With git, things are hard because we cannot share a terminal session (via upterm) due to her using Windows on her laptop (WSL is an option for using upterm but her internet is so damn slow doing the configuration takes way too long), otherwise teaching her use git would be smoother than it is currently, with the other tools she is gaining a good grasp of them, it pleases me that the bottleneck is with Git itself.
She is working on a hangman game with Python, nothing fancy just the terminal. I made the stories with the requirements in Clubhouse for her to work on each as a unit removing some "thought process" of reading requirements and implementing solutions (at Uni it seems the professor writes a document of several pages detailing the background of the project and the requirements, I can see how it can become confusing for some students like her).
She will start Uni again this August 10th, there is a chance that our first "session" at this will end by then, my fear is that she forgets how to use the tools she learned, so I need to find a way to encourage her to keep using them somehow.3 -
In the first one, the group would just not get to agree at something, they'd spend hours talking about an approach.
First times, I was like "Hey, why don't we do this?", they began to argue and half an hour later, they agreed to whatever I said in the first place (they didn't acknowledge what I said and they tell me they came with the solution and that I didn't say anything)
Fucking shit, if only they listened in the first time. -
So one of our sub teams had issues with me splitting a single function in two to help implement a feature that should be in their component in the first place.
All I did was suggest it as a possible solution and got a nasty email in response with my boss left off of the recipients list but my bosses boss listed instead.
Apparently we needed a meeting to suggest the idea of suggesting a new idea and three to four weeks to decide if we should implement it.
This sub team constantly complains that we don't approach them but at the same time makes themselves the most unapproachable group of people on the project. -
Friday wisdom.
Software is not written. It is rewritten.
After spending 3 days approx. On thinking over a design problem. The first 2 days I was clueless how the problem is going ahead. Today I deleted all classes started again and voila.!! It works like magic and I did it with a TDD approach so got good test coverages too.
P.S. I didn't come up with that line. I got it from a tech talk and now understood it's meaning.3 -
I am legit done with neovim. For like couple of months already i tried to code on vim, i really like the hands on approach and less mouse movements so you can be more faster. But my god every starter kit such as NvChad or LazyVim or anything in between has soo many bugs its crazy. Last time i got ^M at the end of each field because the line endings on my mac are different than on my windows machine. But why the fuck am i supposed to even see that in the first place? it doesnt even appear in VSCode. The integrated terminals are shit aswell, in NvChad if i would accidentally hit tab it would switch to a buffer and i couldnt get that terminal back no matter what, and i had to end the application using the task manager. And on LazyVim that fucking thing doesnt know its place, if you open up the file explorer first then the terminal its gonna fill the entire space at the bottom leaving the file tree very small. Overall everything feels clunky buggy messy, i end up debugging vim more than writing actual code. And i seriously cannot understand how is this supposed to make you more productive, i think this is either used by oldheads who started coding initally on vim or by IT snobs who believe they are superior to these "VsCode soyjaks" like myself.6
-
This was a project for school, we had to simulate an app that traced bus routes over a map.
All the teams but mine do it in Java (desktop app), we took another approach and did it on Android with the Maps API.
I had fun coding a parser, this parser job was to read a file and load the bus routes and draw them on the map.
It was structured like:
NAME
COLOR
<lat, long>
<lat, long>
The fun part was coding and telling my teammates "chill out, it will work", so we finished, built and run and... done! First code working smooth AF.
I know it's a simple parser and a simple app, but it was a nice feeling not having to debug the app.1 -
A very long rant.. but I'm looking to share some experiences, maybe a different perspective.. huge changes at the company.
So my company is starting our microservices journey (we have a 359 retail websites at this moment)
First question was: What to build first?
The first thing we had to do was to decide what we wanted to build as our first microservice. We went looking for a microservice that can be used read only, consumers could easily implement without overhauling production software and is isolated from other processes.
We’ve ended up with building a catalog service as our first microservice. That catalog service provides consumers of the microservice information of our catalog and its most essential information about items in the catalog.
By starting with building the catalog service the team could focus on building the microservice without any time pressure. The initial functionalities of the catalog service were being created to replace existing functionality which were working fine.
Because we choose such an isolated functionality we were able to introduce the new catalog service into production step by step. Instead of replacing the search functionality of the webshops using a big-bang approach, we choose A/B split testing to measure our changes and gradually increase the load of the microservice.
Next step: Choosing a datastore
The search engine that was in production when we started this project was making user of Solr. Due to the use of Lucene it was performing very well as a search engine, but from engineering perspective it lacked some functionalities. It came short if you wanted to run it in a cluster environment, configuring it was hard and not user friendly and last but not least, development of Solr seemed to be grinded to a halt.
Elasticsearch started entering the scene as a competitor for Solr and brought interesting features. Still using Lucene, which we were happy with, it was build with clustering in mind and being provided out of the box. Managing Elasticsearch was easy since there are REST APIs for configuration and as a fallback there are YAML configurations available.
We decided to use Elasticsearch since it provides us the strengths and capabilities of Lucene with the added joy of easy configuration, clustering and a lively community driving the project.
Even bigger challenge? Which programming language will we use
The team responsible for developing this first microservice consists out of a group web developers. So when looking for a programming language for the microservice, we went searching for a language close to their hearts and expertise. At that time a typical web developer at least had knowledge of PHP and Javascript.
What we’ve noticed during researching various languages is that almost all actions done by the catalog service will boil down to the following paradigm:
- Execute a HTTP call to fetch some JSON
- Transform JSON to a desired output
- Respond with the transformed JSON
Actions that easily can be done in a parallel and asynchronous manner and mainly consists out of transforming JSON from the source to a desired output. The programming language used for the catalog service should hold strong qualifications for those kind of actions.
Another thing to notice is that some functionalities that will be built using the catalog service will result into a high level of concurrent requests. For example the type-ahead functionality will trigger several requests to the catalog service per usage of a user.
To us, PHP and .NET at that time weren’t sufficient enough to us for building the catalog service based on the requirements we’ve set. Eventually we’ve decided to use Node.js which is better suited for the things we are looking for as described earlier. Node.js provides a non-blocking I/O model and being event driven helps us developing a high performance microservice.
The leap to start programming Node.js is relatively small since it basically is Javascript. A language that is familiar for the developers around that time. While Node.js is displaying some new concepts it is relatively easy for a developer to start using it.
The beauty of microservices and the isolation it provides, is that you can choose the best tool for that particular microservice. Not all microservices will be developed using Node.js and Elasticsearch. All kinds of combinations might arise and this is what makes the microservices architecture so flexible.
Even when Node.js or Elasticsearch turns out to be a bad choice for the catalog service it is relatively easy to switch that choice for magic ‘X’ or component ‘Z’. By focussing on creating a solid API the components that are driving that API don’t matter that much. It should do what you ask of it and when it is lacking you just replace it.
Many more headaches to come later this year ;)3 -
My favorite xkcd quotes (order is not significant )
1. _*It's the world's tiniest open-source violin.*_
2. ...too honest. Scale it back.
3. I'd like to bestow upon you the first annual AWARD of EXCELLENCE in BEING VERY SMART. May you continue to grace our internet with your wisdom.
4. wait, what?
5. Yeah, uh ... I accidentally took the Fourier transform of my cat ...
6. Okay, we _suck_ at this.
7. You either need more medication or less. Not sure which.
8. I THINK EVERYONE INVOLVED HERE IS CUTE
9. World's Greatest Daughter
10. People who open bananas for the other end
11. Just for the sake of the argument, we should get a boat! You can invite the Devil, too, if you want.
12. This explain a lot.
13. My bag is 90% backup batteries.
14. Well- will you be my "it's complicated" on facebook?
15. Oh God. Gotta get out. The window.
16. Sweet! I finally got my subduction license!
17. I'll tell you later - you wouldn't appreciate the punchline over this 12kbps cell phone codec.
18. RON PAUL evolves into TRON PAUL
19. Just talk to them like a f***ing human being
20. In ordering #5, self-driving cars will happily drive you around, but if you tell them to drive to a car dealership, they just lock the doors and politely ask how long humans take to starve to death.
21. I eat my body weight in food every 31 days. That's slightly faster than the human average.
22. Nice try, Mike. Get out of the well.
23. Apollo retroreflectors
24. Can't see space vampires
25. My class on screenshots was a big hit, although for some reason I only ever sold one copy of the digital textbook.
26. WHAT.
27. Introducing The xkcd Phone 6, VIII, 10, X, 26, and 1876. We didn't start this nonconsecutive version number war, but we will not lose it.
28. My morality has evaporated over the harsh UV light.
29. Come on. Somewhere at the edge of the bell curve is the girl for me.
30. P.P.S. I can kill you with my brain.
31. Time to accelerate this giant machine up to terrifying speeds and steer it using my hands, which I am allowed to do because I took a 20-minute test in high school!
32. My normal approach is useless here
33. Wake up, sheeple!
34. Sir- strategic command has send us a lunch order.
35. Yeah, but first I'm gonna go comatose for a few hours, hallucinate vividly, and maybe suffer amnesia about the whole experience.
36. HOLY S***. Guys- people are complicated!
37. OH GOD- SPIDERS
38. Perhaps you need a crash course in taking hints. Here's your first lesson: We're not actually walking somewhere together; I'm trying to leave this conversation and you're following me.
39. How did the pole vaulters get up to our balcony?
40. Friggin' Python
41. I am the goddamn *Michael Jordan* of blurring the line between metaphor and reality. [tosses a basketball] -
Finding it hard to focus. I'm into UI, backend, frontend, iOS... Exploring FP. We've just had our first child and I need to put my time and energy into what will a) provide healthy financial remuneration b) be more enjoyable than frustrating c) be relatively futureproof (if that's even possible). For some reason I have a huge distaste for JavaScript (as an ecosystem) which has led me to look into Elm. I've enjoyed Ruby but something in my mind tells me Functional programming is more logical for me. It's a whole new approach and skill to level-up on. I love programming my own back-ends, but for me, design is so important and I want to be part of the visual, tangible part that people interact with. I'm a one-man operation which means I do design, full stack Development, client liaison, financials, client acquisition. Freelancing is a double edged sword - I don't know when the next project will come, but I also need to focus on the projects I have without taking too much on. At times I think employment would be good, despite having it's on drawbacks which I read about repeatedly on here. Any advice?1
-
Me : .. but sir without sass/js compiled, how can we address the issue?
Boss : that is not an issue, issue is with on approach we have taken?
You sick fuck, you take other developers un-finished work, expect me to finish it (which it did) and when the other developer is not smart enough to copy paste the solution, you give an "update" to me, I mean how the fuck, what ever..
I really really put efforts to make this shit happen, I know very little about your commerce cloud shit, but when you question my logic on basis of someone who will pay you to finish her work, it is very unethical and hard to swallow it down.
Maybe this is my first real job, that is why this is so hard, but I gotta do what I gotta do -
Reverse number(logic)
------
First Approach :=
void reverseMethod(int n)
{
String str="";
int temp=0;
while(n>0)
{
temp=n%10;
n=n/10;
str=str+""+temp;
}
System.out.println(str);
}
-----
Second Approach :=
void reverseMethod(int n)
{
int temp=0;
int rev=0;
while(n>0)
{
temp=n%10;
n=n/10;
rev=rev*10+temp;
}
System.out.println(rev);
}
-----
why the fuck second one is recommended??
In first, at least we do not required to remember that formula.9 -
Hello all (App devs) I have finalized all APIs and here is the postman collection for you. I have been working on the chat page so excuse me for my delay but I finished all the system all that is remaining is the chat. I will be working on it tonight.
Please let me know if there is anything wrong.
Dev 1: thank you will see then asap.
Dev 2: why do u want to make me lost we said u deliver the chat first and then we move forward with the app.
Me: well I had some difficulties with the chat so I finalized all else and u can fix those while I fix the chat
Dev 2: no this is not what we agreed on. This is propostrous. I will not do anything anymore. I need the chat to finale x y and z.
Me: dude the chat has nothing to do with x y and z u can finalize those and then fix the chat!
Dev 2: no I don't understand this is not right.
Me: dude I built the backend I know what u need for x y z. Anyway why all the blame and the destructive approach?
Dev 2 don't think we r kids we r not kids .. (bullshit talk)...
This is the scenario that happens Everytime a pussy of a Dev is late and is ignorant of their job and all about blame it on the weakest point.
Therefore guess what's drafted ?!
MY RESIGNATION PAPER!1 -
How should you approach someone and tell them they have been an victim of social engineering without being mean?
I was at an security conference today and watched a lot of speaks, and I must say that the atmosphere and the people around made it even better.
Here is one takeaway:
Does the security of IT has to be this depressing most of the time, like there is so many IoT devices, services, websites and critical infrastructure that has security flaws and all we can do is watch for now and say we are all fucked. Then try to lead the industry to better practices, like owasp (duck it) . Stop accepting and using shitty answers from SO that has security flaws (why learn something a way that is wrong in the first place?).
We need more awareness about IT security overall, how can one developer know that certain technologies can have certain vulnerabilities such as XSS, XSRF and even SQL injection if there is no information about it in among all shitton tutorials, guides and SO answers in the first place?
Lighten up! Being sad and depressing about these issues is not the best way to approach this! We need to embrace all steps taken towards better security, even the smallest ones.
Check out OWASP if you are not familiar :
https://owasp.org/index.php/...
Thanks for reading. -
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. -
I think promoting 'a quick lookup on Google' every single time you need to add something useful into your codebase is a bad mentality. It's the same problem with populating your code with Stackoverflow snippets.
I think this is not a good approach because your code will eventually rot and you won't have full control over your codebase in that you didn't write those parts and you don't fully know what's going on underneath. Then, you will forget about that code. A new feature request will come up and oh no, you will be wrestling with your old code because you just quickly inserted it in there, not fully knowing it under the hood. Hours will be lost on debugging.
I advocate much more the approach of really knowing the language and the solutions you're using, instead of just constantly hacking it with the excuse of "Oh, there's no time to learn everything", "You don't need to know the details" and "This is the real world".
No, this is not a good attitude. With the former approach, you will be much more able to safeguard your code and improve on it, rather than wrestling for hours with it. I think it's important to have as much ownership of your code as possible and depend as little on outside libraries as possible.
Fundamentals first, practicality second.2 -
Please i have a question
I'm building an API with expressJs
Do i need to create a single database connection for all my query
Or should i rather open and close a connection for every query.
Which one is more efficient?
I'm currently using the first approach but the heroku clearDB addons is keep crashing Everytime saying connexion closed!
Please help
Thanks8 -
I see a lot of articles/posts about the difficult of CSS.
Finding it hard to maintain, or resulting in spaghetti code.
Is this a common occurrence?
Whilst I've come across it in a few projects before, I wouldn't say it's a regular.
Now a lot of our sites are built on CMS' (Umbraco), but here's my approach.
I'll style the generic elements first across all pages
User generated content is usually in its own CSS class (for nested targeting, e.g. ul/ol tags)
Then I'll give each Document Type (post type/page type) it's own body class and apply specific styling to that page where needed.
Hopefully that's of help to some of you. I'm interested to hear your approaches to it! :)5 -
I really don't like the approach that the elementary OS developers took to their system. A closed system like that is antithetical to the whole concept of building on an established base... Which is what they're bloody well doing in the first place!4
-
!rant (I got down voted for this on Stack Overflow, so I try to discuss the issue with a more professional crowd.)
In a Software Engineering class, we had an assignment to read Parnas' seminal paper on modularization [0]. In this paper, two approaches of dividing a software into modules are discussed:
Traditional Approach: A flow chart is drawn to work out the single processing steps and the program's high-level flow. Then every processing step is turned into a module. This approach doesn't yield very good results.
New Approach: Every design decision will be turned into a module by the means of information hiding. This approach leads to much better results.
My personal interpretation of the term design decision is that the modules are identified as data structures rather than as processing steps of an algorithm. This makes sense, because data structures are much more suitable for information hiding then processing steps of an algorithm. (The information inside a data structure is hidden behind functions, whereas a function only hides more detailed processing steps and no information; the information is actually passed in as arguments.)
Why does the second approach work so much better than the first approach? Here comes my second interpretation: The single processing steps of an algorithm are not replaceable (and thus not reusable), whereas it's possible to convert data structures into other data structures.
And here's my question: Could that be the reason why software development using workflow engines (based on BPMN, for example) never really took off?
My personal experience is that the activities created in such workflows are hardly ever reused, but there often are big data structures passed around all the involved activities, even if most of the activities use only one or two of them.
My question exaggerated: Could we get rid of all those clumsy workflow engines by giving managers Parnas' paper to read?
[0]: On the criteria to be used in decomposing systems into modules (Parnas 1972)2 -
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
-
based on my previous rant about dataset I downloaded
https://devrant.com/rants/9870922/...
I filtered data from single language and removed duplicates.
The first problem I spotted are advertisements and kudos at movie start and at end in the subtitles.
The second is that some text files with subtitles don’t have extensions.
However I managed to extract text files with subtitles and it turned out there is only 2.8gb of data in my native language.
I postponed model training for now as it will be long, painful process and will try to get some nice results faster by leveraging different approach.
I figured out I can try to load this data to vector database and see if I can query it with text fragment. 2.8gb will easily fit into ram so queries should be fast.
Output I want is time of this text fragment, movie name and couple lines before and after.
It will be faster and simpler test to find out if dataset is ok.
Will try to make it this week as I don’t have much todo besides sending CVs and talking with people.2 -
!tech i don't understand how people makes any place a home?
I have an experience of living with my parents and that is a place where i feel belonging and safe, but i wonder why? like , in your home, you could be awake till 4 am and still sleep like a log. you won't have thoughts of strangers trying to murder you or rob you when you hear the slightest noise. (atleast not occasionally)
but this is not the case when you try to live alone. for eg , i would often call/text someone before sleep when i am staying in a hotel room. and if the hotel isn't a superior one (imagine those close, small rooms w in a broken up 2 star hotel in a quiet and unpopulated area), i would be sleeping with my eyes open, praying the night to get over
So an early conclusion can be this : a person would feel safe and carefree wherever they are with known people. in my home i got my parents. although its weird since they are neither physically nor financially powerful to deal with any stranger situation. But still, a home feels home. and a home feels safe.
maybe it's because of the the people around the home? so most people have neighbours, shops, parks, efc around their homes. some even have forests, police stations or other places in vicinity. so does that make an area safe to breathe ?
For our family, i don't know if that thing applies. our neighbours are crappy dummies who would rather have someone's home burning than coming for rescue, but fight to death if someone parks in their spot or ask them to fix something. If their is a robbery in our area, i would rather suspect one of those assheads to be the culprits than someone from outside.
however, knowing the fact that they know us makes me think that this is a considerable factor that add to the sense of safeness in an environment . i guess that's why even the verbal quarrels among neighbours are done in such a noisy manner.
So if someone is shifting to another location, say in a different city or even a different state, they should spend first few days befriending every neighborhood person? that would be a weird approach. i have seen a few shiftings in my area and the new people rarely try to come into attention. even the people who get shifter on temporary basis (i.e the rent based pg/tenents etc), are always silent.
so how exactly does anyone make a new house, their comfortable and safe 'home' ?13 -
This is the first time I have a bad PM and it's much worse than having a pain in the ass colleague dev. A bad dev will mess his/work project and maybe slow down 1-2 other devs.
But a bad PM will doom the whole project, wasting lots of time of the devs working under him/her. Costing much more company's money.
PM:This task should be ready by next week.
Me : This task will require X weeks time for developing and delivery
PM: What?! That's too long, it's a simple one, should be done in a few days.
Me: **explaining the challenges, limitation, env set up, testing etc. Also because I am a junior so may take more time than experienced dev**
PM: **insist that this is important blah blah**
Me: Understand your points but X days is just too little, I don't want you to blame me for missing the deadline. Either we get a reasonable deadline or you can get more experienced dev to do it faster.
**Knowing well that I have the most experience in this task and other devs are busy with their own tasks**
In the end I have to escalate this argument to more senior manager because both of us won't budge. Not only she agreed to extend the deadline she also assigned a senior dev to help me when I am stuck.
His other mistakes I noticed during my time working under him:
- not consulting senior dev for the approach to the task (thus we have to change the design twice).
- assigning tasks to people without sufficient background (a java dev is being assigned a python task, it's doable but it's going to be faster if we assign to someone with more python experience right?)
I understand that our company is short-staffed, but I begin to wonder if the stress the devs endure is because of that or because of his incompetence.
Next time, I am going to specifically ask not to work under him again.2 -
People, help me out.
(first some abstract thoughts)
I am a final year undergrad yet to take steps in the world and i am trying to figure out what to do with my time, what my end goal and next steps should be.
As of now I think my end goal is "relaxation , peace and happiness of me and my loved ones", and to reach there , i need money.
My younger self chose engineering for a particular reason(that i vaguely remember) and weather it was a right or wrong/illogical decision, i guess i am stuck with it and have to use this only to reach my end goal.
Maybe i am regretting this and want to change. Maybe i am just a lazy ass who is bad in his assigned role of an engineer and is running towards glitter in other fields, whatever it is , i am not going against the decision of my past and accepting my identity as an engineer.
I believe once i am able to achieve my goal( that am still not sure about but overall is a good one from general perspective), i guess i will be satisfied
------------------------------------------------
(enough with the deep stuff)
I want to learn how to "learn" . like i am always conflicted about what to do next once the tutor leaves my hand.
for eg, let's say i goto a site abc.
1. They got 1 course each for android , web dev and ai. I choose the web dev course and give my hardworking attention to it
( At this point my choice is usually based on the fact that <A> i should not be stupid to buy all 3 course even if i have money/desire to buy all of em because riding 2 horses is only going to break my ass and <B> some pseudo stats like whichever got more opportunity, which i "like", etc(Point B is usually useless in the long run i guess) )
2. From what i have experienced, these courses usually have a particular list of topic that they cover and apply them to 1 or 2 projects. For eg, say that my web dev course taught me 20 something concepts of basic html/css/js/server and the instructor applied it to blog website
BUT WHAT IS NEXT ?
2.1.
>> Should I make more projects using only those particular list of concepts?
I usually have a ton of ideas that i want to implement now that i know how to build a blog site.
say i got a similar idea to make say url shortner. I start with full enthusiasm but in the middle way there is some new thing that i don't know and when i search the internet, i realize that there are 5 ways to implement such concept, making me wander off towards a whole list of concepts that were not covered in my original 20 concept course. This makes the choice 2. 2
2.2
>> Should I just leave everything , go to docs and start learning concepts from the scratch ??
Usually when i start a project, i soon realize that the original 20 concepts were just the tip of iceberg and there are a ton of things one should know, like how os works, how a particular component interacts with another, how the language is working, how the compiler is executing, etc .
At that point i feel like tearing all my notes away, and learning every associated thing from the scratch. No matter how much my project suffers, i want to know how the things are working from the bottom , like how the requests are being mad, how the routes are working, etc which might not even be relevent for the project.
Why i want to follow approach 2? because of the Goal from abstract thoughts. in theory, having deep knowledge is going to clear my interview thereby getting me a good job.
I will get good money, make projects faster and that will be a happily ever after story.
But in practical this approach is bringing me losses and confusion. every layer of a particular thing i uncover, turns out there is another layer below that. The learning never stops. Plus my original project remained incomplete.
What is your opinon, how do you figure out what to do next?8 -
!rant
So I'm gonna attend my first interview tomorrow. Just wanted to know what you all usually answer for the question "what are your weaknesses?". I know there are multiple results on Google for this but I wanted to devs' approach to this9 -
Okay Android dev intern here.
This has been an awfully weird experience for me as an Android dev and this is not the first time. I am seeing a pattern here and i don't know if its just bad luck or its the reality
I have always learned Android by searching on the web , on stack overflow, medium articles, youtube , books , etc.
Sometimes i had a vision to create some unique nd innovative app, nd sometimes i just wanted to learn a particular tech, framework, library, or a feature.
The former case sometimes required the knowledge of unexplored areas, so in order to make the possible product, the original idea would reduce to a smaller, more possible one if i thought it isn't possible or "need more resources on that" after several hours of searching.
But as an intern i found this approach not working out. Here the company gave me an app idea by a designer who thinks its possible, the senior Android dev also thinks its possible and i also believed it to be possible.
The thing is we all know its possible but the person working on it, i.e me, doesn't know have all the knowledge for it.
Fine . I will apply my usual time taking approach of searching and debugging to tackle my issues when they arrive.
But at one stage i too would get exhausted. To me , the code in my front is the correct code for this approach and i have checked all the possible cases, debugged it and yet can't find the issue.
Now the only thing i want is for my senior to look into it, tell me if its an architecture issue or is there any possible case that i missed.
But that's not what company wants. The senior says that he's involved in a lot of projects and my problem is too simple to be solved by solely myself. Now i am sitting here, with my code, exhausted and no longer willing to work here . (And that's maybe why it's my 4th internship and not first)
Am i the asshole fresher?is this always going to be the case? Am i the one running away from the problem and deserve all the lashing that i am getting for not completing the product and getting stuck?4 -
Do you just dive into a project without learning all of the language and APIs or you first learn the language, APIs before you start the project?
I opted for former approach whilst doing android and it was painful. Later, I tried later approach, Iearned more but couldn't produce anywhere near first project.2 -
Best way to approach updatable custom cms?
I currently have to work with an old cakePHP 1.3 cms tailored for a specific customers. The guy I'm doing development for wants to upgrade and move to another framework and create a new cms. Because this is such a niche specific cms we want to add ability to update the cms from the admin panel, over the air - there are 70-100+ websites at all times up and running and updating them manually is not viable. And probably have modules that would be separate but easily installable from the admin panel. Whats the best approach here? Any good examples already working in the wild? First thing that popped into my mind is opencart with the ocmod for custom mods, the problem being updates for it.3 -
Been stuck a week with JSON serializer struggles on the backend I'm working on... First of all, this project has source code dating back to 2013, and the dudes back then decided to use three versions of json. So you have your usual application/json and then two custom ones.
Not happy with that, they decide on using two serializers, XStream and Jackson. One custom and application/json run through XStream, and the other more legacy custom JSON runs through Jackson. So this is a bloody mess.
But now they want application/json running through Jackson, and this is breaking all the regression tests. Have to reimplement all the type, field, alias and other kinds of mappings they made for XStream, and sort out all the regressions this causes.
And the dude who designed all of this is revered in the company, although he left a while back. Not sure if I'm too much of an idiot to understand the utter brilliance of the approach, or its just poorly designed... Fuck my life, those due dates just keep creeping closer and closer and this kinda crap just keeps coming :S2 -
!rant
random question.
Let's say you are making solo project. What is your approach?
Maybe you start writing some classes or generally some code, independantly, than plug things together
Or maybe you write recursively, so like "okay, im writing this method, and now I need other method to complete this one, so I write the other one"
Or maybe you try to make frontend first and do many atomic things, one by one "filling out" frontend? Or maybe frontend is last thing you do?
Just curious, probably as many devs, that many approaches, but Im just curious what kind of creative anwsers will pop out here ;)8 -
At work thres a legacy "common" DLL, which held a helper function that's incharge of creating Slugs, it takes an MD5 of the current time stamp UTC, removing non-URLable chars, and taking the first N chars that remain then
Ngl I was impressed at first at it, but then I thought, its Uniqueness isnt guaranteed
But then again I thought, the uniqueness can be tested via a call given it's indexed anyway in DB so O(1), and if non-unique, just re-call the function. Even in the worst case scenario the hits won't be that many anyway
I didnt change the code, tho at first I was inclined to given my "it isnt proven-unique" stance but am wondering, if this is a good approach
While coolish, it seems wrong in the back of my mind somehow...1 -
Why useImperativeHandle in React is bad?
I have component A. I have component B which is a child of A.
I have button in component A that should change how component B is displayed.
Usual approach is to set state in A, change it upon click and pass that state as flag via props to B.
But there is another approach via exposing ref to component B using forwardRef() + useImperativeHandle().
And then calling method that belongs to B from A. Like this: bRef.current.changeDisplay()
https://stackoverflow.com/questions...
https://reactjs.org/docs/...
https://github.com/reactjs/...
People on SoF and Docs say that the first way is preferrable. But no one explain why.
Does anyone know why calling child method from parent is considered bad?4 -
!rant
A question to all the guys and girls that launched a startup: How powerful was your infrastructure at the beginning? How many requests per seconds did you encounter after the first few weeks after the launch? Did you distribute the workload to different systems in the first place or was that something that was done later?
I am currently working hard in my freetime to get my first project done. As it's still a side project, that I am working on in my freetime, I want to make the launch as smooth as possible. I imagine that it's really hard to make serious changes to the whole design, just because the initial approach doesn't scale well enough. So I am currently in the process of stresstesting the whole infrastructure. But during the stresstest I realized that I don't really know what I should aim for.
What I also want to avoid is, that I am wasting my time on creating a large infrastructure of database servers, caching instances and load balancers that isn't really necessary for the initial launch.
Would really love to hear your experiences on that.3 -
What do y'all think? I'm new here, junior. I finish my tasks generally well within the allotted time. At the moment I take my time, look over my work and try make sure I've done things correctly / as best I can. At first I tried to work quickly and show that I was motivated. Now I've really lowered my acceleration because it feels like no one else is in a rush.. except for when there's deadline pressure. It feels like no one really expects me to get much done. Like, change the theme colors, you've got 3 days. I'm done in like an hour. So I go sloooooooow, change something, go on Reddit or devrant, change something else. Don't check that change in yet, they'll know you've been finished for hours...
Do you think this is the right approach? Or should I try apply myself more, get more done, do extra tasks when I have time? From what I've read online, it's generally not worth working "more" than necessary because it's not appreciated and just results in people expecting more from you.
Thoughts?1 -
Random learnings/realisations/hypothesis:
i have found a sense of happiness in weird symbiotic environment : being rich in a poor environment and live with a poor-but-secretely-rich lifestyle.
i call it the "sheep-hoodie" lifestyle: being a wolf in a herd of sheeps but not with a sheep's skin glued to your body. rather a hoodie so you can be a friendly wolf , ferocious wolf and a friendly sheep whenever you want to.
my 1 group of friends are in a sheep phase : struggling in their life , crunched on money, not saving a lot or focused on savings and stuff. At least that's what shows up from their discussions. however when we are together, i see that we are always supporting each other, and sharing resources/helping each other while having fun
my another group of friends have a wolf lifestyle:
they are insanely rich, if you want to party/do something with them at 'their' level, you gotta have a lot of cash to burn . they are wolves because they know how to sell their stuff, whom to sell and how to retain the info for success. i don't enjoy much with them as their solutions to life problems end up with something that involves a lot of money than effort.
So my lifestyle is to earn like them, but live like my broke friends. they think that am earning 20% of what i earn now, and am also in lots of debts and family crisis. someday my lie is gonna burst when i buy expensive stuff lol
--------
#2
i have realised that i have an OCD for silence and psychotic reaction to noise . for me ,
Silent Environment >> sex >> any relationship.
I might react so aggressively to noise while trying to focus that i may end up breaking the closest of relations with anyone
--------------
#3
thinking of having 3 twitter accounts just to fix the problem of devrant not saving content of dormant accounts :
- professional : an id where i will share my professionally stupid questions, achievements, debates etc
- personal/partial-anon : an id where i will share my personal thoughts and stuff. it might also include devrant screenshots / embarrising content that i make here
- true-anon : a full anonymous account for my(some) extreme thoughts, trigger content and explicit researches
my current twitter feed is a mix of first 2, but making 2 seperate accounts might give me more freedom(the level of devrant) to express myself than what i do now (as my followers are also interesting people but mostly related to tech)
guess i should move my tech content there than my personal content.
------------------------------
#4
making an early opinion about something should only be done to research for truth/content/conversion/hype . final opinion should always be made after you trust something with a research. for eg, initial opinion of Elon Musk was he being a bad guy, but now after seeing his crazy ideas and approach towards twitter, he looks like someone who can truly make it a money minting machine.
------------------------------
#5
A simple perception towards making money as not being a bad thing does wonders at a management level and life .
liberal opinion of twitter layoff and later changes were emotional and blaming, but thinking from a business approach, his company partners(and whoever he likes) now have special golden badges to feel like VVIP and have an orgasm, while he gave a dummy melon to every person on earth to pay for feeling like a VIP and have an orgasm.
a brilliant tactic to make money without anyone calling the minting of money as BAD. genius
------------------------------
#6
was randomly checkin Insta, saw an ex-collegue share a random deep thought quote, and i realised that i might have known her for just a week or 2 in college, but she had a very nice nature.
However, she was the daughter of a very rich ass dad and had almost everything in life. she gave a bit spoilt(for me) look, like someone who did ciggs or drink, but her talks then and our chats later just on chat gave me a very nice hustler vibe (the type of people i like: hustling and professional)
I indirectly asked her on a date and she agreed. so, this is something very interesting for me, as i am hopelessly single and full of judgemental opinions/ strict rules. share your tips and notes on how to have a successful date, and stuff that one must NOT do . much grateful if you do not come under rule 29 of internet and share your POV -
so, if your TL gave you a task to update all the libraries of an app to their latest version, how are you going to go with it?
Honestly my first reaction was frustration and scare. Coz in android, its already very difficult to run a 1 year old project in the latest studio as a lot of things become incompatible with each other.
but thinking deeply, i think its a nice challange as a software dev.
i got 1 approach in mind ,the bomb blast approach : search for the latest versions of that lib in maven central and replace
any other , more sequential approach that you could think of?1 -
What kind of innovation approach has helped humanity in a better way? Is it some group of obscure indie devs working overnight to write some software which is free, useful and purposeful devoid of licensing shit or the too-honorary-to-shit-from-arse organizations which put marketing gimmicks like making world better place and which compromise user data either to governments or to other corporations for monetizing given the first chance. If innovation is happening in both the spectrums then what is the viable kind of required innovation at the moment for us humans. IMHO I don't trust corporate innovation and shitty innovations happening in Facebook, Google and likes. Has corporate greed bought innovation for market price.1
-
One day, a friend introduced me to Python, calling it a "friendly programming language for beginners." I remember spending my first few hours writing simple scripts, and though it was challenging, I was hooked. For the first time, I could see the immediate result of my efforts, and it felt incredibly empowering. At 23, I made a bold decision. I started teaching myself programming in earnest while still juggling my other responsibilities. I took online courses, read books, and spent hours practicing. I made countless mistakes and encountered errors that felt insurmountable, but I learned to see them as puzzles to solve. By the time I turned 24, I landed my first job as a junior developer. It wasn’t an easy journey, but it was one of the most rewarding experiences of my life. Programming taught me not only technical skills but also how to think critically and approach problems methodically.4
-
LOST BITCOIN RECOVERY SERVICE ⁄⁄ DIGITAL HACK RECOVERY
Digital Hack Recovery has emerged as a leading force in the intricate landscape of Bitcoin recovery, offering invaluable assistance to individuals and companies grappling with the loss or theft of their digital assets. In an era where the adoption of virtual currencies like Bitcoin is on the rise, the need for reliable recovery services has never been more pressing. This review aims to delve into the multifaceted approach and remarkable efficacy of Digital Hack Recovery in navigating the challenges of Bitcoin recovery. At the heart of Digital Hack Recovery's methodology lies a meticulous and systematic procedure designed to uncover the intricacies of each loss scenario. The first step in their methodical approach is the detection of the loss and the acquisition of crucial evidence. Recognizing that every situation is unique, the team at Digital Hack Recovery invests considerable time and effort in comprehending the nature of the loss before devising a tailored recovery strategy. Whether the loss stems from a compromised exchange, a forgotten password, or a hacked account, they collaborate closely with clients to gather pertinent information, including account details, transaction histories, and any supporting documentation. This meticulous data collection forms the foundation for an all-encompassing recovery plan, ensuring that no stone is left unturned in the pursuit of lost bitcoins. What sets Digital Hack Recovery apart is not only its commitment to thoroughness but also its utilization of sophisticated tactics and cutting-edge technologies. With a wealth of experience and expertise at their disposal, the team employs state-of-the-art tools and techniques to expedite the recovery process without compromising on accuracy or reliability. By staying abreast of the latest developments in the field of cryptocurrency forensics, they can unravel complex cases and overcome seemingly insurmountable obstacles with ease. Moreover, their success is underscored by a portfolio of case studies that showcase their ability to deliver results consistently..it is not just their technical prowess that makes Digital Hack Recovery a standout player in the industry; it is also their unwavering commitment to client satisfaction. Throughout the recovery journey, clients can expect unparalleled support and guidance from a team of dedicated professionals who prioritize transparency, communication, and integrity. From the initial consultation to the final resolution, Digital Hack Recovery endeavors to provide a seamless and stress-free experience, ensuring that clients feel empowered and informed every step of the way. Digital Hack Recovery stands as a beacon of hope for those who have fallen victim to the perils of the digital age. With their unparalleled expertise, innovative approach, and unwavering dedication, they have cemented their reputation as the go-to destination for Bitcoin recovery services. Whether you find yourself grappling with a compromised exchange, a forgotten password, or a hacked account, you can trust Digital Hack Recovery to deliver results with efficiency and precision. With their help, lost bitcoins are not merely a thing of the past but a valuable asset waiting to be reclaimed. Talk to Digital Hack Recovery Team for any crypto recovery assistance via their Email; digitalhackrecovery @techie. com2 -
Hi my name is John Edwin and i want to share my story as I write this review. I never thought I'd see the day where I'd recover my stolen cryptocurrency. The experience was nothing short of a nightmare. I had invested a small fortune in Bitcoin, thinking it was the safest way to grow my wealth. But, I was wrong. A phishing scam got the better of me, and before I knew it, my entire wallet was drained. I was devastated. Days turned into weeks, and I had lost all hope. I tried reaching out to the authorities, but they seemed just as clueless as I was. It was as if I was on my own in this dark, uncharted territory. That's when I stumbled upon HACKER ZED NEMESIS a crypto recovery agency that promised to help victims like me. At first, I was skeptical. I had tried so many other "recovery experts" before, only to be left disappointed and poorer. But, something about HACKER ZED NEMESIS resonated with me. Maybe it was their 5-star reviews or the fact that they had a physical address listed on their website (a rarity in the crypto space!). Whatever it was, I decided to take a leap of faith and reach out to them. From the get-go, the team at HACKER ZED NEMESIS was professional, empathetic, and reassuring. They listened to my story, asked the right questions, and got to work immediately. Their approach was meticulous, and I could sense that they had dealt with cases like mine before. Fast forward a few weeks, and I received an update from the team - they had recovered 95% of my stolen crypto! I couldn't believe my eyes. The relief, the joy, the sense of vindication - it was all overwhelming. I had my life back, and I owed it all to HACKER ZED NEMESIS What sets them apart from other recovery agencies is their transparency, expertise, and commitment to delivering results. They're not just in it for the money; they genuinely care about helping people like me who've been wronged by the system. If you're a victim of crypto fraud, don't give up hope. Reach out to HACKER ZED NEMESIS and let them work their magic. Trust me, you won't regret it. I'm living proof that they're the real deal. Thanks again, HACKER ZED NEMESIS for giving me a second chance. You're the true heroes of cyber security if you've had an experience like mine please contact them VIA
-
A few months ago, I made what felt like the worst mistake of my life, I lost access to my Bitcoin wallet containing a staggering $500,000 worth of BTC. Yes, you heard that right: half a million dollars! This wasn’t just an amount of money; it was my life savings, my retirement fund, and my secret stash for that dream vacation to a tropical island, goodbye, piña coladas! The stress was unbearable, and my sleep schedule? Well, let’s just say I was starting to resemble a zombie auditioning for a horror movie. I was too ashamed to tell my family. I mean, who wants to explain to their parents that their golden goose turned into a rusty old chicken? Instead, I confided in a close friend, who immediately recommended ADRIAN LAMO HACKER. He’d heard about them through a colleague who had experienced a similar disaster. At first, I was skeptical—after all, I had the same faith in my old flip phone’s battery life during a three-hour movie marathon. But desperate times call for desperate measures, so I decided to give them a shot. When I reached out to ADRIAN LAMO HACKER Via email: Adrianlamo@ consultant. com/ WhatsApp: +1 (909) 739‑0269/ Telegram username: @ADRIANLAMOHACKERTECH, I was pleasantly surprised by their professionalism. They didn’t promise me the moon or that I’d be sipping cocktails in the Bahamas by sunset. Instead, they assured me they would do their best, which, let’s be honest, was way more reassuring than my uncle’s “It’ll all work out” mantra during family gatherings. Their calm approach gave me hope, even when I was pretty sure my Bitcoin had taken an extended vacation without me. Throughout the recovery process, they kept me updated at every turn. I felt like I was in a reality show, except the only drama was my anxiety levels and my ever-growing collection of stress snacks. Finally, after a few nail-biting days that felt like years in a time loop, I got the message I had been praying for—they had recovered my wallet! When I logged in and saw my balance fully restored, I broke down in tears—happy tears, mind you, not the kind you shed when you accidentally step on Lego. ADRIAN LAMO HACKER didn’t just recover my funds; they saved my sanity, my future, and my tropical vacation plans. If you ever find yourself in a similar situation, trust me: these folks know what they’re doing. They’ll have you back in control faster than you can say, “Where’s my Bitcoin?!”
-
RAPID DIGITAL RECOVERY: PIONEERING BITCOIN RESTORATION SOLUTIONS
I was horrified when I lost my 45,000 ETH for the first time. It accounted for a sizeable amount of my savings, which I had built up over years of cautious investing and faith in the cryptocurrency industry. It was a sophisticated hack, not a bad trade or market meltdown, that caused the loss. I felt completely powerless after the money was taken directly out of my wallet. I initially turned to multiple recovery services in the hope of recovering my stolen assets. However, after months of dealing with fraudulent services and ineffective solutions, I was on the verge of writing off my entire investment. Many services seemed like nothing more than scams, preying on vulnerable individuals like myself. They promised miracles but left me with empty assurances and no results. I was about to give up when a buddy suggested Rapid Digital Recovery, a brand I had never heard of. I was first dubious because I had previously been burned and didn't want to put my trust in another provider. However, Rapid Digital Recovery felt different in some way. They took a professional approach, spoke openly, and sincerely wanted to provide a workable answer. From the very first consultation, I was impressed by their level of expertise. They took the time to explain how they worked, the tools they used to trace stolen funds, and the process they followed to attempt to recover assets. They didn’t promise a quick fix but reassured me that they had successfully assisted others in similar situations. They walked me through each step of the process and kept me updated at every stage. Over the next several weeks, I saw the results of their hard work. Rapid Digital Recovery employed advanced techniques to track the stolen ETH across various blockchain networks and worked tirelessly with law enforcement and crypto exchanges to trace its movements. Their team showed a level of dedication and professionalism that I hadn’t seen from any other recovery service. I’m happy to say that, after months of intense work, Rapid Digital Recovery was able to recover the majority of my stolen ETH—around 42,000 ETH, which was an incredible relief. While not every cent was returned, the recovery rate far exceeded my expectations, and I felt like I had regained control over my financial future. What stood out the most about my experience with Rapid Digital Recovery was their transparency and integrity throughout the process. Unlike many other services, they never made unrealistic promises or pressured me into paying exorbitant fees upfront. They were clear about what was achievable and kept me informed every step of the way. If you find yourself in a similar situation—dealing with the devastating loss of crypto assets due to theft or fraud—I highly recommend Rapid Digital Recovery. Their expertise, dedication, and ethical approach to recovery make them stand out in an industry plagued with unreliable services. I can confidently say that without them, I would have likely lost my entire investment. Contact for more info: ....... Web site Info: https: // ra pi ddigit alrecove ry .o rg ....... What sapp Info: +1 41 4 80 7 14 8511 -
So some notes
First
When he walked up on the one guy he was likely trying to turn the tables so the guy would taze him
Second on arriving and determining he was drunk I'd have determined how drunk
The guard might have been able to say the approach was mildly threatening
They did ask where he came from and how he got here which wouldn't matter if they didn't test his level of intoxication
Additionally he has no id
And he doesn't speak English very well
That would have resulted in me demanding records from his supposed employer
Basically a bit more digging to ensure this wasn't an imm issue
He is asking the correct questions and they did call in an interpreter
So. Overall.
However I wouldn't have let a bystander sit back down until I moved him further away and I would not have turned my back on a perp
He didn't do anything confrontational to the cops so it's not unheard of to cut him a break but I'd follow up with the employer to make sure he isn't an illegal and didn't have any pending warrants or a history of drunken behavior or probation or parole
Apparently not that great of an interpreter and suddenly he speaks better English lmao3 -
HIRE FAST USDT-BTC RECOVERY EXPERT\FOLKWIN EXPERT RECOVERY.
I had a dreamlike beginning to my Bitcoin journey. The success stories and the notion that cryptocurrencies could transform how we invest and accumulate money enthralled me. I made a sizable investment in Bitcoin after doing extensive research and planning in the hopes of securing my financial future. Everything seemed ideal for a while, and my investment seemed to be yielding positive results. However, everything came crashing down. My Bitcoin was taken due to a huge hacking attack and a succession of missteps, which saddened me. My hard-earned savings and investments were gone in an instant. My loss was unbearably heavy. I not only lost a lot of money, but I also felt like I had failed myself and my future. I was overcome with regret, fear, and helplessness. Every attempt to get access to my cash failed, and the prospect of ever seeing my money again became increasingly distant. In my efforts to look for a helping hand, I contacted various so-called "recovery services," but they all revealed to be scams or failed to deliver any meaningful remedies. I was frantic, terrified that my money had been lost forever, and I was sinking more into despair. The prospect of irreversible financial devastation worried me, and I felt worthless. That’s when I found ( Folkwin Expert Recovery ). At first, I was hesitant. After all, I had already been burned by false promises. But after reading about their track record of successful recoveries and their professional, transparent approach, I decided to give them a chance. It felt like my last shot at recovering what I had lost. After weeks of persistence, I received the incredible news that my stolen Bitcoin had been recovered. The relief I felt was overwhelming. What had seemed like a hopeless situation had been reversed, and my financial future was no longer in jeopardy. I couldn’t believe it—I had been given a second chance. Thanks to ( Folkwin Expert Recovery ), I was able to overcome the devastation of losing my Bitcoin and begin to rebuild my financial security. They showed me that with the right team and the right approach, even the most devastating losses can be turned around. Contact Folkwinexpertrecovery (AT) tech-center (DOT) com or W-h-a-t-s-A-p-p; +1 (740)705-0711 for help.
Regards,
Edward H Macnamara.3 -
Your Bitcoin is Worth Fighting For: Discovering Pro Wizard Gilbert Recovery's Magic
In the world of Bitcoin recovery, Pro Wizard Gilbert truly represents the gold standard. My experience with Gilbert revealed just how exceptional his methods are and why he stands out as the premier authority in this critical field. When I first encountered the complexities of Bitcoin recovery, I was daunted by the technical challenges and potential risks. Gilbert’s approach immediately distinguished itself through its precision and effectiveness. His methods are meticulously designed, combining cutting-edge techniques with an in-depth understanding of the Bitcoin ecosystem. He tackled the recovery process with a level of expertise and thoroughness that was both impressive and reassuring. What sets Gilbert’s methods apart is not just their technical sophistication but also their strategic depth. He conducts a comprehensive analysis of each case, tailoring his approach to address the unique aspects of the situation. This personalized strategy ensures that every recovery effort is optimized for success. Gilbert’s transparent communication throughout the process was invaluable, providing clarity and confidence during each stage of the recovery. The results I achieved with Pro Wizard Gilbert’s methods were remarkable. His gold standard approach not only recovered my Bitcoin but did so with an efficiency and reliability that exceeded my expectations. His deep knowledge, innovative techniques, and unwavering commitment make him the definitive expert in Bitcoin recovery. For anyone seeking a benchmark in Bitcoin recovery solutions, Pro Wizard Gilbert’s methods are the epitome of excellence. His ability to blend technical prowess with strategic insight truly sets him apart in the industry. Call: for help. -
Losing access to a $250,000 cryptocurrency wallet felt like my worst nightmare come true. One moment, I was clicking what seemed like a routine link; the next, I was locked out of my funds with no way back in. The panic that set in was overwhelming. Frantic and fearing that my money was lost forever, I started researching solutions and stumbled upon Digital Web Recovery. From the very first interaction, I knew I was in good hands, Their team handled my case with remarkable professionalism, offering clear communication and genuine reassurance. They didn’t make any exaggerated promises but instead walked me through their recovery process step by step, making sure I understood how they would tackle my situation. Their use of advanced forensic tools was impressive, and it became clear they were experts in recovering lost crypto, It wasn’t long before they delivered results beyond my expectations. Not only did they recover every cent of the $250,000 I thought I’d never see again, but they also provided me with invaluable advice on how to secure my wallet and prevent similar incidents in the future. Their transparency in pricing and dedication to my case were refreshing, and I felt reassured every step of the way, If you’ve ever found yourself locked out of your cryptocurrency wallet and think your funds are gone for good, don’t lose hope. Digital Web Recovery is the team that will get you through it, with professionalism, expertise, and an approach that inspires trust, CONTACT INFO; Website; https: // digitalwebrecovery. com WhatsApp;+13433003465
-
HOW DIGITAL HACK RECOVERY HELPED ME RECOVER MY STOLEN CRYPTO
I am a teacher, and I lost 13,000 CAD to fraud. Thankfully, I found help through Digital Hack Recovery, which assisted me in navigating the complex process of recovering my funds.If you find yourself in a similar situation, it’s essential to act quickly. The first step is to report the incident to the relevant authorities, including local law enforcement and consumer protection agencies. Prompt action increases your chances of recovery.Gathering supporting documentation is crucial. Collect any communication with the fraudsters, transaction records, and details about the platform. This documentation helps establish a clear timeline and context for your case. Many fraudsters try to downplay their actions, but these scams are often well-orchestrated schemes designed to exploit individuals.Digital Hack Recovery provided valuable support throughout my recovery journey. They guided me on how to approach my case and helped me understand my options for pursuing recovery.If you used a credit card or bank transfer, reach out to your financial institution to inquire about potential chargebacks or recovery options. Even if the platform was unregulated, some banks may offer avenues for recourse.Joining support groups or forums for fraud victims can also be beneficial. Sharing your experience with others who understand your situation can provide emotional support and practical advice. Remember, you are not alone, and many individuals have successfully navigated the recovery process.While facing the aftermath of fraud can be disheartening, it’s essential to remember your rights as a consumer. Taking action not only helps you potentially recover your losses such as that 13,000 CAD but also contributes to efforts to hold fraudsters accountable.if you’ve been a victim of fraud, don’t lose hope. With the right plan, prompt reporting, and the support of organizations like Digital Hack Recovery, it is possible to recover your funds and regain control over your financial well-being. Don’t let the perpetrators of these scams ruin your mental and financial health. Seek help and take the necessary steps to reclaim your funds. Contact Digital Hack Recovery via⁚
WhatsApp +19152151930
Website; https : // digital hack recovery . com
Email; digital hack recovery @ techie . com -
My name is Sharron Maggie , and I’m a graduate of Stanford University. After finishing my degree, I faced immense challenges in finding a sustainable job that would allow me to pay off my student loans and live the life I desired. In my search for financial stability, I stumbled upon cryptocurrency trading, specifically Bitcoin. I invested hoping to turn my situation around, and I watched my assets soar to an impressive $500,000.
However, my journey took a dark turn when I received an email that appeared to be from my crypto exchange, prompting me to verify my account. I clicked the link and entered my information, only to realize minutes later that it was a phishing scam. In an instant, my account was drained of all its funds. Feeling desperate and devastated, I turned to a friend who had faced similar challenges, and he recommended Trust Geeks Hack Expert. Skeptical but with nothing to lose, I decided to contact them. From the first interaction, their team was incredibly responsive and professional, assuring me they had successfully handled cases like mine.
Trust Geeks Hack Expert immediately began securing my accounts and tracing the transactions. They worked with cybersecurity experts to freeze any fraudulent transfers and managed to recover a significant portion of my assets. Their expertise was impressive, and they took the time to educate me about the importance of strong, unique passwords and enabling two-factor authentication. What stood out to me was their holistic approach to the recovery process. Trust Geeks Hack Expert not only focused on retrieving my funds but also guided me in enhancing my online security to prevent future attacks. They taught me to recognize phishing scams and reinforced the need for robust security practices.
This experience was a harsh but valuable lesson in online security. It made me more vigilant about my digital presence and interactions. Thanks to Trust Geeks Hack Expert, I not only regained most of my assets but also acquired essential knowledge on protecting my investments moving forward. If you ever find yourself in a similar situation, I wholeheartedly recommend reaching out to Trust Geeks Hack Expert.
(CONTACT SERVICE )
E ma il ---> Trustgeekshackexpert [At] fast service . com
Tele gram ID ---> Trustgeekshackexpert
Web site ----> https :// trustgeekshackexpert. com/ -
ETH-BTC-USDT RECOVERY EXPERT VISIT -- SPARTAN TECH GROUP RETRIEVAL
Running a small business comes with its own set of challenges, but nothing prepared me for the ordeal of losing access to my Bitcoin wallet. I had set aside CAD 187,000 in Bitcoin as a safety net, trusting a friend to help manage my finances. One day, I logged in to check my balance, only to find the wallet empty. My heart sank as I realized my friend had betrayed my trust. The betrayal was devastating—not just financially, but emotionally. Losing that amount of money could have crippled my business. In my desperation, I stumbled upon Spartan Tech Group Retrieval through this Email: spartantechretrieval (@) g r o u p m a i l . c o m while browsing an online forum. Skeptical yet with nothing to lose, I decided to reach out to them also on WhatsApp:+1 (206) 719 - 7295. From our first conversation, I felt a sense of relief. The team was not only professional but also incredibly empathetic, understanding the emotional toll this situation had taken on me. They assured me they would do everything in their power to help. What stood out was their thorough approach; they focused on recovering my funds while educating me on securing my assets moving forward. After what felt like an eternity of waiting, I received the news that my funds had been recovered. The relief was overwhelming. It wasn’t just about the money; it was about regaining control over my business and my peace of mind. Spartan Tech Group Retrieval saved me not only financially but also restored my confidence. This experience taught me a valuable lesson: never entrust your financial security entirely to someone else. Thanks to Spartan Tech Group Retrieval, I was able to recover from a potentially devastating loss and emerge stronger on the other side. Their dedication and expertise provided me with a lifeline when all seemed lost. If you ever find yourself in a similar situation, don’t hesitate to contact them. They truly are the lifeline you need.
COMPANY INFORMATOIN : Telegram:+1 581 286 8092 -
Lingam massage is an old Indian sacred practice and is considered a kind of tantric massage. Lingam is translated as “wand of light”, so in Sanskrit they call manhood. Particular attention is paid to the male genitalia.
This procedure delivers the most exquisite pleasure possible, allowing you to retire from earthly problems and soar into the heavens of spiritual bliss. Enjoyment of tantric massage is subtly connected with the healing effect of careful female hands on men's health and is aimed at releasing hidden men's energy. Oiling, stroking and massaging the penis and testicles, exciting the innermost point - all the pleasures are available to you in reality.
This is, first of all, an effective form of therapy that gives longstanding results and positively affects your daily life. When the client begins to approach the highest point of pleasure, the masseuse slows down. Repeating this procedure during the massage session several times, a man can significantly increase the time to ejaculation.
You can choose a girl who will perform a tantric massage according to all traditions https://erotic-time.com.ua/en/... -
I FOUND OUT ABOUT MY WIFE’S INFIDELITY USING GRAYHATHACKS CONTRACTOR
I was in a situation that I never thought I'd find myself in. My wife and I had been together for five years, and I had noticed some changes in her behavior lately. She was distant, secretive, and always had her phone glued to her hand. I tried talking to her, but she'd just brush me off, saying it was work stress. I knew deep down it was more than that. I couldn't just ignore the gut feeling that something was off.
So, I did what any desperate, confused, and heartbroken person would do - I started looking for answers. That's when I stumbled upon the world of hackers and investigators. I first came across the Beviant Group of Hackers. They promised me the moon and stars, but all they delivered was a bunch of empty promises and a lighter wallet. I was about to give up hope when my cousin, who had been a silent witness to my pain, suggested I try Grayhathacks Contractor.
It's no exaggeration that it was the best decision I ever made. I was skeptical at first, I'll admit. I mean, I had just been burned by another group, so how could I trust them? But something about their approach was different. They were professional, empathetic, and above all, discreet. They assured me that they'd help me find the truth without invading my wife's privacy any more than necessary.
They set up a plan to track her movements, intercept her calls, and read her messages and emails. The first few days were nerve-wracking, but then the information started to trickle in. It was like they had a map of her life laid out in front of them. They were so precise with their work, it was unbelievable. They pinpointed her location down to the minute, showed me the calls she was making, and even provided me with transcripts of her chats.
What they uncovered was like a punch in the gut. My wife had been fooling around with a coworker, someone she claimed was just a friend. They had planned vacation trips together, all under the guise of work. The nerve of her. But here's the kicker - she had been using our joint account to fund these little escapades. The betrayal was unreal.
The confrontation was hard, but with the solid proof in my hand, I couldn't deny the truth anymore. It was a mix of anger, sadness, and relief, really. I finally had the answers I needed to move forward. And even though it's been a tough road, I'm starting to pick up the pieces of my life, thanks to Grayhathacks Contractor.
If you're in a similar situation, I can't recommend them enough. -
Hi, in my latest project I'm stuck on the CSS part.
I've already an Grunt + Sass Asset Generator for bootstrap.
The project has several (> 70) subpages aka modules.
The theming is client based, currently 4 clients with different colors.
At first I thought it was easy...
Splitting bootstrap to variables per client + bootstrap, so:
client1_variables.scss
client1_bootstrap.scss (including client1_variables).
client2_variables.scss
client2_bootstrap.scss
. . .
But now I'm stuck.
Reaason: The css classes are the same between the clients, eg client-bg-primary is the class.
I wanted to prevent generating for each client a folder - as every folder would contain the same content:
module/news/client1.scss
module/news/client2.scss
module/news/client3.scss
module/dashboard/client1.scss
module/dashboard/client2.scss
module/dashboard/client3.scss
...
Each SCSS file would only differ in the variable import...
Is there a way to prevent a Global Module CSS file for each client (as there are @##* fucking classes duplicated and I really don't want to untangle that mess) but not ending up with writing the same Code over and over?
The IRC sass channel is moderated, not possible to ask there... And when I google I find mostly themes based on an class approach (border-light vs border-dark)… :(2