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 - "distributed"
-
Why did the chicken cross the road?
Assembler Chicken: First, it builds the road ......
C Chicken: It crosses the road without looking both ways.
C++ Chicken: The chicken wouldn't have to cross the road, you' d simply refer to him on the other side.
COBOL Chicken: 0001-CHICKEN-CROSSING.
IF NO-MORE-VEHICLES
THEN PERFORM 0010-CROSS-THE-ROAD
VARYING STEPS FROM 1 BY 1 UNTIL
ON-THE-OTHER-SIDE
ELSE
GO TO 0001-CHICKEN-CROSSING
Cray Chicken: Crosses faster than any other chicken, but if you don't dip it in liquid nitrogen first, it arrives on the other side frazzled.
Delphi Chicken: The chicken is dragged across the road and dropped on the other side.
Gopher Chicken: Tried to run but got beaten by the Web chicken.
Intel Pentium Chicken: The chicken crossed 4.9999978 times.
Iomega Chicken: The chicken should have ' backed up' before crossing.
Java Chicken: If your road needs to be crossed by a chicken, then the server will download one to the other side. (Of course, those are chicklets.) See also WMI Monitor.
Linux Chicken: Don't you *dare* try to cross the road the same way we do!
Mac Chicken: No reasonable chicken owner would want a chicken to cross the road, so there's no way to tell it how to cross the road.
Newton Chicken: Can't cluck, can't fly, and can't lay eggs, but you can carry it across the road in your pocket.
OOP Chicken: It doesn't need to cross the road, it just sends a message.
OS/2 Chicken: It crossed the road in style years ago, but it was so quiet that nobody noticed.
Microsoft's Chicken: It's already on both sides of the road. What's more its just bought the road.
Windows 95 Chicken: You see different coloured feathers while it crosses, but when you cook it still tastes like........ chicken.
Quantum Logic Chicken: The chicken is distributed probabilistically on all sides of the road until you observe it on the side of your choice.
VB Chicken: USHighways! <TheRoad.cross> (aChicken)
XP Chicken Jumps out onto the road, turns right, and just keeps on running.
The Longhorn Chicken had an identity crisis and is now calling itself Vista.
The Vista Chicken dazzled itself with its own graphics.20 -
B: you are not even a real developer
Me: ??
B: you are using windows
Me:
Me: what the fucking fuck did you just fucking say you little fuck? Ill have you know i have written at least 4 lines of code, commented once and have a stackoverlfow reputation of -7. I have completed every beginner level udemy course on applied brainfuck mathematics and have worked as a distributed data analyst with excel 03. You are nothing to me, every piece of code i write runs on exactly 3 billion devices and i have an unsuccessful facebook meme page. Bitch.5 -
Ever wanted cheat codes to devRant? Well, that's weird. But here you go, I guess.
Since the avatars do not use any external assets (Such as images), all avatars are generated. To be friendly to people who want to make third-party devRant clients (such as devRantron), avatars are generated server-side, so that the assets don't need to be distributed, and third-party programmers don't need to work out rendering avatars.
But this allows you to cheat a little.
The devRant avatars API works like this: you request a really long URL from the API, specifying the IDs of each cosmetic item the user has active, and it returns a PNG file. But you don't need an auth token to generate an avatar (which makes sense), so the avatar API is essentially a sandbox you can play around with if you have the time and patience.
You can write a really good avatar previewer with this knowledge, and see your avatar with a white tiger, even if you don't have the ++s13 -
Holy fucking hell!
Who the fuck sets up a local network with an 255.255.0.0 subnet mask and then lets the dhcp-server distribute clients onto the 192.249.x.x., 192.2.x.x and the 192.22.x.x networks AT FUCKING RANDOM???
I need to SSH onto 40 routers distributed across the entire campus and have a WORKING internet connection while doing so and you make me spin the connect-disconnect-wheel. Fucking hell dude, don't give me that "Uh, it wasn't intended for this size"-bullshit. You have about 200 active devices. And in one subnet you have space for more than 60 000. Fuck you, dumbass! OH, YOUR FUCKING LIST IS FUCKING WRONG AND YOU DON'T REMEMBER THE IP OF THE ROUTERS? OH FUCK YOU EVEN HARDER!!!
Goddamn people why does legacy maintenance always suck so much?😭😭😭4 -
My first unintentional "hack" was in middle school, I had been programming for a couple years already and I was really bored.
My school had blocked facebook, twitter and so on because most students are lazy and think everything revolves around their "descrete" cleavage picture's likes. Any way, I thought most would be naive and desperate enough to fall into a "Facebook unblocked" app at the desktop, the program was fairly simple just a mimicking FB page done on C# ASP that saved user and passwords in an encrypted file.
I distributed it in around 5 computers and by the end of the month I had over 60 accounts, and what did I do? I used it to post a gay relationship between two of my friends on fb (one had a gf), it was dumb but boy did I laughed, after that I erased everything as it didn't seem so important.3 -
Me: I have an input stream!
Library: I want a file.
Me: I can see your code, you will convert it to an input stream! Don't any of your constructors take an input stream?
Library: No. I want a file. Okay, you can also include an encoding.
Me: I don't care about encoding.
Library: Fine, just give me the file then.
Me: You mean I have to somehow convert my input stream into an actual file so I can give it to you?
Library: You're gradually catching on, yes.
Me: Can I add a new constructor myself that takes an input stream?
Library: Sure! Good luck in getting it approved by the maintainers and the new jar distributed everywhere, including Maven Central before your deadline.
Me: Fine, I'll just rearchitect everything so I can give you an actual file.
Library: And then everything will be fine.
Me:3 -
Bus-Factor: A new metric to describe how well kowledge is distributed among the team members by calculating how many of your team members can be run over by a bus without killing your project!6
-
A memorial for my favorite rant of all time "Why did the chicken cross the road?"
+++++++++++++++++++++++++++++++++++++
Why did the chicken cross the road?
Assembler Chicken: First, it builds the road ......
C Chicken: It crosses the road without looking both ways.
C++ Chicken: The chicken wouldn't have to cross the road, you' d simply refer to him on the other side.
COBOL Chicken: 0001-CHICKEN-CROSSING.
IF NO-MORE-VEHICLES
THEN PERFORM 0010-CROSS-THE-ROAD
VARYING STEPS FROM 1 BY 1 UNTIL
ON-THE-OTHER-SIDE
ELSE
GO TO 0001-CHICKEN-CROSSING
Cray Chicken: Crosses faster than any other chicken, but if you don't dip it in liquid nitrogen first, it arrives on the other side frazzled.
Delphi Chicken: The chicken is dragged across the road and dropped on the other side.
Gopher Chicken: Tried to run but got beaten by the Web chicken.
Intel Pentium Chicken: The chicken crossed 4.9999978 times.
Iomega Chicken: The chicken should have ' backed up' before crossing.
Java Chicken: If your road needs to be crossed by a chicken, then the server will download one to the other side. (Of course, those are chicklets.) See also WMI Monitor.
Linux Chicken: Don't you *dare* try to cross the road the same way we do!
Mac Chicken: No reasonable chicken owner would want a chicken to cross the road, so there's no way to tell it how to cross the road.
Newton Chicken: Can't cluck, can't fly, and can't lay eggs, but you can carry it across the road in your pocket.
OOP Chicken: It doesn't need to cross the road, it just sends a message.
OS/2 Chicken: It crossed the road in style years ago, but it was so quiet that nobody noticed.
Microsoft's Chicken: It's already on both sides of the road. What's more its just bought the road.
Windows 95 Chicken: You see different coloured feathers while it crosses, but when you cook it still tastes like........ chicken.
Quantum Logic Chicken: The chicken is distributed probabilistically on all sides of the road until you observe it on the side of your choice.
VB Chicken: USHighways! <TheRoad.cross> (aChicken)
XP Chicken Jumps out onto the road, turns right, and just keeps on running.
The Longhorn Chicken had an identity crisis and is now calling itself Vista.
The Vista Chicken dazzled itself with its own graphics.21 -
It happened 2 nights ago.
We had a whatsapp project for the distributed application programming class, my project mate and me were coding for 2 weeks whole day to finish it, especially with the end-to-end encryption feature that teacher asked, till 2 nights ago the project was trash, the private chat wasn't working and and nothing else is done we had only the UI, we was really doomed especially we had 1 more day to deliver the software, and we decided to deliver the project as a trash and get marks from the UI and the presentation.....
Till the night before deadline at 8 pm
I wanted to try fix some interface pictures and to make it better......
The next thing it was 6 am and the project is full working..
When I told my project mate he was not believing, I had to swear multiple times fot him and hat to go and show him the project by the eye.
We delivered the prohect and got 22/25 😁😁😁
It was incredible I didn't believe my self at first place.
Sory for the long story 😓.3 -
For my school coursework, we have to create a search facility, now the problem is my class weren't taught this. So 3 sleepless nights and with basically no knowledge of Javascript, I create it. Now, I like my classmates so I don't want them to fail, so I distributed it to them with clear instructions and told my teacher that I'd done this. They asked for my help anytime it crashed but no-one said thanks, they just treated me like an easy route to a pass. I went onto my school private development forums and it turned out my teacher had created a tag for me called 'Unsung Hero' and made a UH appreciation thread that I could read but others could only type their own post. People in my class were praising me for what I'd done and how much I helped. I understand why I do development and why I'll never stop.9
-
Okay, story time.
Back during 2016, I decided to do a little experiment to test the viability of multithreading in a JavaScript server stack, and I'm not talking about the Node.js way of queuing I/O on background threads, or about WebWorkers that box and convert your arguments to JSON and back during a simple call across two JS contexts.
I'm talking about JavaScript code running concurrently on all cores. I'm talking about replacing the god-awful single-threaded event loop of ECMAScript – the biggest bottleneck in software history – with an honest-to-god, lock-free thread-pool scheduler that executes JS code in parallel, on all cores.
I'm talking about concurrent access to shared mutable state – a big, rightfully-hated mess when done badly – in JavaScript.
This rant is about the many mistakes I made at the time, specifically the biggest – but not the first – of which: publishing some preliminary results very early on.
Every time I showed my work to a JavaScript developer, I'd get negative feedback. Like, unjustified hatred and immediate denial, or outright rejection of the entire concept. Some were even adamantly trying to discourage me from this project.
So I posted a sarcastic question to the Software Engineering Stack Exchange, which was originally worded differently to reflect my frustration, but was later edited by mods to be more serious.
You can see the responses for yourself here: https://goo.gl/poHKpK
Most of the serious answers were along the lines of "multithreading is hard". The top voted response started with this statement: "1) Multithreading is extremely hard, and unfortunately the way you've presented this idea so far implies you're severely underestimating how hard it is."
While I'll admit that my presentation was initially lacking, I later made an entire page to explain the synchronisation mechanism in place, and you can read more about it here, if you're interested:
http://nexusjs.com/architecture/
But what really shocked me was that I had never understood the mindset that all the naysayers adopted until I read that response.
Because the bottom-line of that entire response is an argument: an argument against change.
The average JavaScript developer doesn't want a multithreaded server platform for JavaScript because it means a change of the status quo.
And this is exactly why I started this project. I wanted a highly performant JavaScript platform for servers that's more suitable for real-time applications like transcoding, video streaming, and machine learning.
Nexus does not and will not hold your hand. It will not repeat Node's mistakes and give you nice ways to shoot yourself in the foot later, like `process.on('uncaughtException', ...)` for a catch-all global error handling solution.
No, an uncaught exception will be dealt with like any other self-respecting language: by not ignoring the problem and pretending it doesn't exist. If you write bad code, your program will crash, and you can't rectify a bug in your code by ignoring its presence entirely and using duct tape to scrape something together.
Back on the topic of multithreading, though. Multithreading is known to be hard, that's true. But how do you deal with a difficult solution? You simplify it and break it down, not just disregard it completely; because multithreading has its great advantages, too.
Like, how about we talk performance?
How about distributed algorithms that don't waste 40% of their computing power on agent communication and pointless overhead (like the serialisation/deserialisation of messages across the execution boundary for every single call)?
How about vertical scaling without forking the entire address space (and thus multiplying your application's memory consumption by the number of cores you wish to use)?
How about utilising logical CPUs to the fullest extent, and allowing them to execute JavaScript? Something that isn't even possible with the current model implemented by Node?
Some will say that the performance gains aren't worth the risk. That the possibility of race conditions and deadlocks aren't worth it.
That's the point of cooperative multithreading. It is a way to smartly work around these issues.
If you use promises, they will execute in parallel, to the best of the scheduler's abilities, and if you chain them then they will run consecutively as planned according to their dependency graph.
If your code doesn't access global variables or shared closure variables, or your promises only deal with their provided inputs without side-effects, then no contention will *ever* occur.
If you only read and never modify globals, no contention will ever occur.
Are you seeing the same trend I'm seeing?
Good JavaScript programming practices miraculously coincide with the best practices of thread-safety.
When someone says we shouldn't use multithreading because it's hard, do you know what I like to say to that?
"To multithread, you need a pair."18 -
Boss wants to scale our webservers because it seems they're having performance/capacity issues....
I'VE BEEN TELLING HIM FOR WEEKS IT'S NOT THE SERVERS!!! IT'S THE FACT THAT EVERY SINGLE QUERY HITS A SINGLE MONGODB... AND NO CACHE EITHER... AND THE DB CANT BE ENTIRELY LOADED INTO MEMORY AS ITS TOO BIG FOR RAM ON A SINGLE SERVER...
HOW THE FUCK CAN YOU SCALE IF EVERYTHING HAS A DEPENDENCY ON 1 NON-DISTRIBUTED DATABASE?6 -
Me: Boss, i am not qualified for this. This is something totally different that what i do.
Boss: Just do what you can.
* Me does something which seems to work*
-- A few months or even years later:
Boss: Our distributed systems don't longer work. What happened?
Me, after checking different system: Oh, there is a key that expired. I didn't know this key had an expire date. So they can no longer connect.
Turns out we have to visit every remote system (driving distance of a few 100's km) and set a new key. We couldn't do it remotely since we lost access.
Maybe, just maybe, when your employee says he isn't qualified for a task, listen and search someone that know what he is doing.2 -
My Professor today, explaining data distribution in distributed systems:
"Imagine distributing Username data in subsets, such as A-C, D-F, G-I, J-L etc... And we have a lot of users with A .... *long pause* A bunch of assholes basically .."1 -
The IT head of my Client's company : You need to explain me what exactly you are doing in the backend and how the IOT devices are connected to the server. And the security protocol too.
Me : But it's already there in the design documents.
IT Head : I know, but I need more details as I need to give a presentation.
Me : (That's the point! You want me to be your teacher!) Okay. I will try.
IT Head : You have to.
Me : (Fuck you) Well, there are four separate servers - cache, db, socket and web. Each of the servers can be configured in a distributed way. You can put some load balancers and connect multiple servers of the same type to a particular load balancer. The database and cache servers need to replicated. The socket and http servers will subscribe to the cache server's updates. The IOT devices will be connected to the socket server via SSL and will publish the updates to a particular topic. The socket server will update the cache server and the http servers which are subscribed to that channel will receive the update notification. Then http server will forward the data to the web portals via web socket. The websockets will also work on SSL to provide security. The cache server also updates the database after a fixed interval.
This is how it works.
IT Head : Can you please give the presentation?
Me : (Fuck you asshole! Now die thinking about this architecture) Nope. I am really busy.11 -
My colleague unknowingly uses the word "paralyze" for "parallelize". When is the good time to correctly him? So far he has successfully paralyzed my code.4
-
Back in the days DevRant used to be a small community. A rant would be seen by all, with a higher chance of marking the stress ball incentive target.
Now, those upvotes are distributed among many more users who have the privilege of upvoting to what they find more interesting.
However, this is not a rant about who has a better chance of winning a stress ball; it's about feeling proud how this community grew so healthy, and tailor made for developers!! :)
Kudos! I love this community6 -
Craziest bug, not so much in the sense of what it was (although it was itself wacky too), but in what I went through to fix it.
The year was 1986. I was finishing up coding on a C64 demo that I had promised would be out on a specific weekend. I had invented a new demo effect for it, which was pretty much the thing we all tried to do back then because it would guarantee a modicum of "fame", and we were all hyper-ego driven back then :) So, I knew I wanted to have it perfect when people saw it, to maximize impressiveness!
The problem was that I had this ONE little pixel in the corner of the screen that would cycle through colors as the effect proceeded. A pixel totally apart from the effect itself. A pixel that should have been totally inactive the entire time as part of a black background.
A pixel that REALLY pissed me off because it ruined the utter perfection otherwise on display, and I just couldn't have that!
Now, back then, all demos were coded in straight Assembly. If you've ever done anything of even mild complexity in Assembly, then you know how much of a PITA it can be to find bugs sometimes.
This one was no exception.
This happened on a Friday, and like I said, I promised it for the weekend. Thus began my 53 hours of hell, which to this day is still the single longest stretch of time straight that I've stayed awake.
Yes, I spent literally over 2+ days, sitting in front of my computer, really only ever taking bio breaks and getting snacks (pretty sure I didn't even shower)... all to get one damn pixel to obey me. I would conquer that f'ing pixel even if it killed me in the process!
And, eventually, I did fix it. The problem?
An 'i' instead of an 'l'. I shit you not!
After all these years I really don't remember the details, except for the big one that sticks in my mind, that I had an 'i' character in some line of code where an 'l' should have been. I just kept missing it, over and over and over again. I mean, I kinda understand after many hours, your brain turns to mush. and you make more mistakes, so I get missing it after a while... but missing it early on when I was still fresh just blows my mind.
As I recall, I finally uploaded the demo to the distro sight at around 11:30pm, so at least I made my deadline before practically dropping dead in bed (and then having to get up for school the next morning- D'oh!). And it WAS a pretty impressive demo... though I never did get the fame I expected from it (most likely because it didn't get distributed far and wide enough).
And that's the story of what I'd say was my craziest bug ever, the one that probably came closest to killing me :)5 -
'Sup mates.
First rant...
So Here's a story of how I severely messed up my mental health trying to fit in university.
But the bonus: Found my passion.
Her we go,
Went to university thinking it'll be awesome to learn new stuff.
1st sem was pure shock - Programming was taught at the speed of V2 rockets.
Everything was centred around marks.
Wanted to get a good run in 2nd sem, started to learn Vector design, but RIP- Hospitalized for Staph infection, missed the whole sem and was in recovery for 3 months.
So asked uni for financial assistance as I had to re-register the courses the next semester. They flat out refused, not even in this serious of a case.
So, time to register courses for third semester, turns out most of the 2nd year courses are full, I had to take 3rd year courses like:
Social and Informational Networks
Human Computer Interaction
Image processing
And
Parallel and Distributed Computing (They had no prerequisites listed, for the cucks they are: BIG MISTAKE)
Turns out the first day of classes that I attend, the Image proc. teacher tells me that it's gonna be difficult for 2nd years so I drop it, as the PDC prof. also seconds that advice.
Time travel 2 months in: The PDC prof is a bitch, doesn't upload any notes at all and teaches like she's on Velocity-9 while treating this subject like a competition on who learns the most rather than helping everyone understand.
Doesn't let students talk to each other in lab even if one wants to clear their friend's doubt, "Do it on your own!" What the actual fuck?
Time for term end exams and project submission: Me and 3 seniors implement a Distributed File System in python and show it to her, she looks satisfied.
Project Results: Everyone else got 95/100
I got 76.
She's so prejudiced that she thinks that 2nd years must have been freeloaders while I put my ass on turbo for the whole sem, learning to code while tackling advanced concepts to the point that I hated to code.
I passed the course with a D grade.
People with zero consideration for others get absolutely zero respect from me.
Well it's safe to say that I went Nuclear(heh.. pun..) at this point, Mentally I was in such a bad place that I broke down.... Went into depression but didn't realise it.
But,
I met a senior in my HCI class that I did a project with, after which I discovered we had lots of similar interests.
We became good friends and started collaborating on design projects and video game prototyping.
Enter the 4th sem and holy mother of God did I got some bad bad profs....
Then it hit me
I have been here for two years, put myself through the meat grinder and tore my soul into shreds.
This Is Not Me
This Wont Be The End Of Me
I called up my sister in London and just vented all my emotions in front of her.
Relief.
Been a long time since I felt that.
I decided to go for what I truly feel passionate about: Game Design
So I am now trying to apply for Universities which have specialised courses for game design.
I've got my groove again, learnt to live again.
Learning C# now.
:)
It's been a long hello, and If you've reached till here somehow, then damn, you the MVP.
Peace.9 -
Personally the coolest was the program I built for my fathers use on his job.
It was my first to be used commercially in the real.
That was a very big thing, I was 17 at the time an used turbo pascal 5.5 and he used it to compute how well all machinery was doing, they rented out diggers and other construction equipment to construction sites and manually compute this with a calculator took up to three days. (This was 1987 so there was not very many ready made programs for business, you often had to build your own)
With this program he had it done in around 30 minutes.
The next best was recently when I got my raft distributed consensus cluster server working. Its a little bit like zookeeper.
Building that purely from the research paper was rewarding but a bit of a challenge.3 -
*In a lecture
Lecturer: Consequences of Distributed Systems
Students: **attentive as fudge**
Lecturer: Heteroginity
Students:
Lecturer: Independent Failures
Students:
Lecturer: No global 'COCK'
Students: WHOOOOA, global what?...that escalated fast
Lecturer: I mean no global 'CLOCK'
Students: yeah right, can we use cock though?2 -
NEW 6 Programming Language 2k16
1. Go
Golang Programming Language from Google
Let's start a list of six best new programming language and with Go or also known by the name of Golang, Go is an open source programming language and developed by three employees of Google and the launch in 2009, very cool just 3 people.
Go originated and developed from the popular programming languages such as C and Java, which offers the advantages of compact notation and aims to keep the code simple and easy to read / understand. Go language designers, Robert Griesemer, Rob Pike and Ken Thompson, revealed that the complexity of C ++ into their main motivation.
This simple programming language that we successfully completed the most tasks simply by librariesstandar luggage. Combining the speed of pemrogramandinamis languages such as Python and to handalan of C / C ++, Go be the best tools for building 'High Volume of distributed systems'.
You need to know also know, as expressed by the CTO Tokopedia namely Mas Leon, Tokopedia will switch to GO-lang as the main foundation of his system. Horrified not?
eh not watch? try deh see in the video below:
[Embedyt] http://youtube.com/watch/...]
2. Swift
Swift Programming Language from Apple
Apple launched a programming language Swift ago at WWDC 2014 as a successor to the Objective-C. Designed to be simple as it is, Swift focus on speed and security.
Furthermore, in December 2015, Swift Apple became open source under the Apache license. Since its launch, Swift won eye and the community is growing well and has become one of the programming languages 'hottest' in the world.
Learning Swift make sure you get a brighter future and provide the ability to develop applications for the iOS ecosystem Apple is so vast.
Also Read: What to do to become a full-stack Developer?
3. Rust
Rust Programming Language from Mozilla
Developed by Mozilla in 2014 and then, and in StackOverflow's 2016 survey to the developer, Rust was selected as the most preferred programming language.
Rust was developed as an alternative to C ++ for Mozilla itself, which is referred to as a programming language that focus on "performance, parallelisation, and memory safety".
Rust was created from scratch and implement a modern programming language design. Its own programming language supported very well by many developers out there and libraries.
4. Julia
Julia Programming Language
Julia programming language designed to help mathematicians and data scientist. Called "a complete high-level and dynamic programming solution for technical computing".
Julia is slowly but surely increasing in terms of users and the average growth doubles every nine months. In the future, she will be seen as one of the "most expensive skill" in the finance industry.
5. Hack
Hack Programming Language from Facebook
Hack is another programming language developed by Facebook in 2014.
Social networking giant Facebook Hack develop and gaungkan as the best of their success. Facebook even migrate the entire system developed with PHP to Hack
Facebook also released an open source version of the programming language as part of HHVM runtime platform.
6. Scala
Scala Programming Language
Scala programming termasukbahasa actually relatively long compared to other languages in our list now. While one view of this programming language is relatively difficult to learn, but from the time you invest to learn Scala will not end up sad and disappointing.
The features are so complex gives you the ability to perform better code structure and oriented performance. Based programming language OOP (Object oriented programming) and functional providing the ability to write code that is capable of evolving. Created with the goal to design a "better Java", Scala became one behasa programming that is so needed in large enterprises.3 -
To me, it seems like the rise of distributed systems like mesos / kubernetes combined with Docker require you to be master sysadmin, veteran kernel hacker and a part time c developer ALL AT ONCE if you really want to shave off time from debugging/ performance tuning sessions. Anyone wish they paid more attention in class ? Lol.4
-
Work enforced a screensaver policy - a corporate screensaver that even us local admin devs can't change.
I swiftly made a .reg script and distributed it.
We all laugh whenever someone's "Ribbons" screensaver starts up.
I love using my powers for evil.1 -
Once upon a time, one or two jobs ago, a really awesome engineer specced out a distributed search application in response to a business need. This company was managed pretty oldschool and required a ton of paperwork and approvals.
The engineer spent many weeks running tests and optimizing the hell out of this app cluster. It flew, and he had the data to prove it could handle production workloads (think hundreds of terabytes of data being processed every single day)
Part of the way he achieved this was having RAID0 on all of the servers to maximize I/O throughput. He didn't care much about data loss, since the application itself was fault tolerant on a much more granular level.
Management, hearing about this, absolutely flipped their shit and demanded RAID6 instead. This despite the conclusive data that the engineer had that proved RAID6 couldn't keep up.
He more or less got told to STFU.
Even this despite the fact that a RAID restripe would actually take many times longer than rebuilding the failed node from scratch (a process that took about 30 minutes by hand, and could probably be automated to be done in less than five), causing a longer exposure to actual data loss throughout the length of the days-long array rebuild time.
The ill-thought-out requirement added about 50% to the cost of the project (*many* more hard drives now required), beyond the original budget, and the subsequent bureaucratic wrangling resulted in a late product launch.
6 months or so later, after real customers were using this product, the app was buckling under around half of its expected workload. A friend of the engineer suggested to management to try RAID0. Sure enough, that resolved the I/O bottleneck.
This rage-inducing story has a happy ending, though! Said engineer left the company not long after this incident, citing it as a reason for his departure. He was immediately hired by another company, making integer multiples of his prior salary.
The product the company botched the launch of by ignoring his spec? It died a few months later. Maybe the poor customer experience was to blame? Maybe the late launch? Maybe it was another reason entirely.
Either way, millions of dollars of hardware now sat fallow. This was a black eye on the company all the way up to the C-level.
tl;dr: Listen to your engineers. You hired them for their expertise.5 -
If you're going to host a Women in Tech Breakfast, there needs to be more than one samovar of coffee (even if it's being constantly refilled). Clearly the hosts have no experience in distributed computing.
-
I used to work for a company that had a main website and a lightweight app. LW app was distributed to partners and added to other sites using an iframe.
Someone decided a requirement was to retain the shopping cart for anonymous users. Some dev thought the best way to do that was to issue auth cookies to anonymous users.
The auth cookie issued by the LW app was actually for the main site. A few users for LW app decided to just come to main site to make a purchase. Since they already had an auth cookie (issued from LW app), they were never prompted to log in, create an account, or use guest checkout on the main site. They were still able to complete their order and we had their shipping address, but we didn’t have their email address so we couldn’t contact them about their order.
Customer service had no way to email customers if something went out of stock or if there was a product recall. CS would have to call these customers and ask for email addresses. Good luck getting anyone to answer or return a call nowadays. Customers were asking where their confirmation email was. The admin website was polluted with “users” that had the placeholder email for non-logged in users.
This happened because of a combination of an understaffed and overextended engineering department. Of course when something goes bad it’s going to be bad. -
Using Oracle 10g for our distributed databases practical lab session, and typed many SQL queries in one sheet.
Suddenly this guy came and told shortcut 'ctrl + r' to quickly run selected query.
And the page fucking reloaded and boom, all queries were gone! His evil laugh was more disturbing. 😡😡
Fuck him.3 -
As you can see from the screenshot, its working.
The system is actually learning the associations between the digit sequence of semiprime hidden variables and known variables.
Training loss and value loss are super high at the moment and I'm using an absurdly small training set (10k sequence pairs). I'm running on the assumption that there is a very strong correlation between the structures (and that it isn't just all ephemeral).
This initial run is just to see if training an machine learning model is a viable approach.
Won't know for a while. Training loss could get very low (thats a good thing, indicating actual learning), only for it to spike later on, and if it does, I won't know if the sample size is too small, or if I need to do more training, or if the problem is actually intractable.
If or when that happens I'll experiment with different configurations like batch sizes, and more epochs, as well as upping the training set incrementally.
Either case, once the initial model is trained, I need to test it on samples never seen before (products I want to factor) and see if it generates some or all of the digits needed for rapid factorization.
Even partial digits would be a success here.
And I expect to create multiple training sets for each semiprime product and its unknown internal variables versus deriable known variables. The intersections of the sets, and what digits they have in common might be the best shot available for factorizing very large numbers in this approach.
Regardless, once I see that the model works at the small scale, the next step will be to increase the scope of the training data, and begin building out the distributed training platform so I can cut down the training time on a larger model.
I also want to train on random products of very large primes, just for variety and see what happens with that. But everything appears to be working. Working way better than I expected.
The model is running and learning to factorize primes from the set of identities I've been exploring for the last three fucking years.
Feels like things are paying off finally.
Will post updates specifically to this rant as they come. Probably once a day.2 -
I'm the git expert at my work. This means every time someone has the slightest issue with git (or the git features in their ide), I get interrupted.
😡😡😡
Also I will say it is fascinating watching people who've used centralised version control all their lives struggle with distributed.
"Do you have my changes? I merged them into your branch..."
"You can commit and not push?!"9 -
We should not tolerate censorship.
Beyond all the u.s. hype over elections
(and the division in the west in general), the real story is all the censorship on both sides.
Reasonable voices are quickly banned, while violent voices and loud angry people are amplified.
I broke out of the left-right illusion when
I realized what this was all about. Why
so much fighting in the street was allowed, both
justified and unjustified. Why so much hate
and division and slander, and back and forth
was allowed to be spread.
It's problem, reaction, solution.
The old order of liberal democracy, represented
in the u.s. by the facade of the GOP and DNC,
doesn't know how to handle the free *distributed*
flow of information.
That free-flow of information has caused us to
transition to a *participatory* democracy, where
*networks* are the lever of power, rather than
top down institutions.
Consequently, the power in the *new era* is
to decide, not what the *narrative* is, but
who can even *participate*, in spreading,
ideating, and sharing their opinions on that
narrative, and more broadly, who is even allowed
to participate in society itself.
The u.s. and west wants the chinese model of
control in america. you are part of a network, a
collective, through services and software, and
you can be shut off from *society* itself at
the drop of a pin.
The only way they get that is by creating a crisis,
outright fighting in the streets. Thats why
people keep being released after committing serious
fucking crimes. It's why the DOJ and FBI are
intent on letting both sides people walk.
They want them at each others literal throat,
calling for each other's blood. All so they
can step back and then step in the middle when
the chorus for change cries out loud enough.
And the answer will be
1. regulated tech
2. an end to television media as we know it
3. the ability to shut someone off from any service on a dime
4. new hatespeech laws that will bite *all* sides in the ass.
5. the ability to shape the narrative of society by simply 'pruning' networks as they see fit, limiting the reach of individuals on all sides, who are problematic to
the collective direction.
I was so caught up in the illusion of us-vs-them I didn't
see it before now. This is a monstrous power grab.
And instead of focusing on a farce of election, where the party *organizations* involved are institutional facades for industrialists, we should be focusing on the real issue:
* Failure of law to do its job online, especially failures of slander and libel laws, failures of laws against conspiracy to commit crime or assault
* New laws that offer injunctive relief against censorship, now that tech really is the commons. Because whats worse than someone online whipping up a mob on either side, is
someone who is innocent being *silenced* for disagreeing with something someone in authority said, or for questioning a politician, party, or corporation.
* Very serious felony level laws against doxxing and harassment on all sides, with retroactive application of said laws because theres a lot of people on all sides who won't be satisfied with the outcome until people who are guilty are brought to justice.18 -
What would you change if you were the owner of a site like devrant?
I've been in devrant for weeks now and the thing I like the most of it is the community (at least most of it).
If you are going through a bad time, they wish you well.
People here also seem to have very decent work experience.
In general, they seem to be open towards other technologies and honest about their shortcomings.
I also like that the site (for better or worse) is not insanely moderated.
For example, in reddit, it's very easy to get a post removed because it doesn't abide to the rules. They can be rudiculous strict, and mods can be trigger happy.
I'm not denying the existence of any moderation here, but for example I've seen some pretty graphic sexual comments, and I appreciate that anything goes (except being a dick ofc).
And I guess that the fact that the community is so chill has to do with that, there's not a huge need for moderation (unless I'm totally oblivious).
But how do you keep a community like that?
I've seen people complaining about the influx of new users and the spam of shitty memes.
How do you keep devrant cool while letting new people join?
I think a necessary thing is that you separate the people into 'universes' and each universe has a limit of x users. And somehow the users are distributed in a way that the average level of 'user likes the universe they're in' is maximum.
Now, how do you create that? Not sure, maybe you let users vote whether they like the other users or not (such votes being hidden to others ofc) and let users switch unis if they don't like them.
What ideas do you have?8 -
a client today wanted a specialized high performance, extremely stable, stock management software for pharmaceutical products, he also wants the software distributed, cross platform, and expect the delivery to be in a week or so, oh and did i mention that he also wants it to have an extremely good looking ui,
he got offended that i said you can only have one or two of those things not all of them,
for context, I'm just a freelancer not a big company and doing what he wants is impossible for me, also it was a billion ages since i worked on anything desktop related, web is all I'm diving into lately7 -
Company wants me to give a rough estimate of developing a new feature in a distributed legacy monolit. They told me they would inform me the next day and want the estimate on the same day for a project that will probably take 2 devs 3-4 months. I ask for more time and info, give the estimate and they say it "feels too much". I mean ok. Then why am I even estimating? If in the first place the client has only X money than do the project for X and it doesn't really matter how much work it is, does it?4
-
I've assembled enough computing power from the trash. Now I can start to build my own personal 'cloud'. Fuck I hate that word.
But I have a bunch of i7s, and i5s on hand, in towers. Next is just to network them, and setup some software to receive commands.
So far I've looked at Ray, and Dispy for distributed computation. If theres others that any of you are aware of, let me know. If you're familiar with any of these and know which one is the easier approach to get started with, I'd appreciate your input.
The goal is to get all these machines up and running, a cloud thats as dirt cheap as possible, and then train it on sequence prediction of the hidden variables derived from semiprimes. Right now the set is unretrievable, but theres a lot of heavily correlated known variables and so I'm hoping the network can derive better and more accurate insights than I can in a pinch.
Because any given semiprime has numerous (hundreds of known) identities which immediately yield both of its factors if say a certain constant or quotient is known (it isn't), knowing any *one* of them and the correct input, is equivalent to knowing the factors of p.
So I can set each machine to train and attempt to predict the unknown sequence for each particular identity.
Once the machines are setup and I've figured out which distributed library to use, the next step is to setup Keras, andtrain the model using say, all the semiprimes under one to ten million.
I'm also working on a new way of measuring information: autoregressive entropy. The idea is that the prevalence of small numbers when searching for patterns in sequences is largely ephemeral (theres no long term pattern) and AE allows us to put a number on the density of these patterns in a partial sequence, but its only an idea at the moment and I'm not sure what use it has.
Heres hoping the sequence prediction approach works.17 -
company has Google drive, OneDrive, DropBox accounts, and yet 90% of important documents are distributed via email...2
-
I've been a programmer for almost 19 years but I actually think the best code I've ever written is something that while it provides value to other people I'm the only one who actually uses it. In the company where I work we have major events that have to be supported by a number of different teams across about 5 time zones and each engineer has a limited set of roles that they can perform during the event. Anyway it was painful just watching people trying to create a schedule so I wrote something with Linear Programming to automatically generate the schedule. It ensures that people don't work for longer than 4 hours in a row, don't work from more than 8 hours from the first hour to the last hour on call, get 12 hours rest between engagements and the work load is evenly distributed across the team. Creating conditions in Linear Programming is weird, imagine trying to turn a series of linear equations into boolean logic, it can be done and once you can wrap your head around it it's really fun. It was my first time writing anything in it and I don't see it coming up a lot in my career. My favourite part of this project is that the end result was that engineers were less exhausted. I really hope that doesn't remain the best code I ever wrote, I don't think it will but it will require a conscious intention.2
-
Git is distributed. What's on gitlab it's also on my 3 different machines. So I have 3 backups for the code. Not such a big deal except issues and PRs.6
-
"Yes, the work could have finished way earlier. But it's easy, and I would have probably been bored of it and left earlier"
Finally got the reason why our fucking CTO couldn't create a fucking stable Backend for almost a year while the frontend team got all the slack because certain things are still not functioning well and while the marketing team every fucking time got their face red while showing the demo because the fucking api is not stable. Seriously, we wasted a whole year just because you could write something more interesting and enjoyable. Fuck you. Never been this willing to murder someone.
Context: A simple booking platform. No need for creating a complex distributed system while our userbase may not even be in million even on a peak season.
And he laughily commented maintaining it would be a headache.
I could seriously kill someone right now.2 -
A centralised "music on hold" system. Powered by a PHP web service, and a raspberry pi in each clients office(s) to handle the "player". Essentially a distributed DJ system.1
-
Okay, I think I am losing it, how do you explain a distributed computing VM has to somehow execute code on some hardware at a point to a customer that is clearly a big ass bullshit eater/buzzword bitch?
Because if I can't, I may buy a plane ticket for Canada and an axe, and that is not for cutting lumber11 -
We'd just finished a refactor of the gRPC strategy. Upgraded all the containers and services to .Net core 3, pushed a number of perf changes to the base layer and a custom adaptive thread scheduler with a heuristic analyzer to adjust between various strategies.
Went from 1.7M requests/s on 4 cores and 8gb ram to almost 8M requests/s on the same, ended up having to split everything out distributed 2 core instances because we were bottlenecking against 10gb/e bandwidth in AWS.2 -
Yeah so... I‘m an IT student and am supposed to have a certificate exam about software engineering RIGHT AT THIS VERY MOMENT!
The person from the certificate place arrived half an hour late due to a delay of her flight.
That sucks alot because many students have other exams just after this one.
I always go one hour early to exams so even if 2 trains are delayed I will be there in time.
I would expect said person to do the same.
It gets even worse. We sit there expecting to start the exam half an hour late and guess what:
The distributed exam is not the one we are meant to take......... FOR FUCKS SAKE why did I even come here?!?!5 -
Course title: Advanced Database Management
Course Objectives:
-Create a database with SQL.
-Describe data normalization of database information.
-Describe distributed database management system.
-Design databases based on Entity Relationship modeling.
-Discuss connecting to databases with server-side scripts.
-Discuss database administration and security.
-Discuss database systems
Like. Come. On.7 -
I'm on my last year on my master in computer science. What can I except when I'm done? Give me your wisdom! :) Please don't answer "hell" etc without a explanation haha :) I'm doing a master in AI and distributed system.7
-
Docker swarm. All i want is a 'zero-downtime' system and everytime i try to set it up there's three damn things missing. Load balencer, service updater, and a good distributed storage. I finally got pissed off and am working on those but fuck it's been how fucking long docker has been out why the hell somebody else hasn't done this yet.3
-
Developer vs non developer interview:
Non developer:
How well do you know excel ?
Developer:
How would you write spreadsheet app, what if it was cross platforms mobile application but also desktop app ?
Non developer:
Do you know how to use windows?
Developer:
Do you know kubernetes, distributed systems, lambdas, cloud services and how to deploy to server farm ?
Non developer:
You know how to use printer / fax and coffee machine ?
Developer:
Do you have experience in writing code for embedded devices ?
Non developer:
Do you know powerpoint ?
Developer:
How well do you know javascript / html / css, are you comfortable with writing backend node.js code or electron applications ?
React native and native apps maybe ?5 -
Fuck stupid managers.
My current agency tried to create a bundle of generic Microservices with the hope of save time and money on future projects. That was two years ago (i was working here from 4 months ago).
What they have now? well, a sort of distributed monolyth were if one service goes down, everything else fails, infinite technical debt, no security policies (yeah, all the apis are open!!!) Business rules on the frontend . . .
And what the stupid manager say? "Everything must be ok because i designed it very well, i research a lot for this"
Stupid boomer.
PD: Yeah, despite the fact he is judt a manager, he take the responsibility to design the full architecture, idk why no one srops him.4 -
Somewhere in my early teens, I started playing with macro scripts in Microsoft Word or Excel. After that I tried my hand at creating a full-on VB app. After creating several of those I tried Python, C++, then HTML, CSS and JavaScript.
Short story: My first distributed program was what I used to get my first girlfriend: A program that told her all the things I was too shy to say and ask the things I was too afraid to ask... Including "will you be my girlfriend?" Fun times 😄1 -
Old unused military satellite to make international calls free. Local tv station to leak episodes. 4500 hosts zombie net with autoreplicant bots that scans for vulnerability to populate the net to do distributed denial of service attacks. Jumper on the neighborhood cabin to redirect the school's call for being absent, an older friend pretended to be my father.
-
To be honest, I'm not as excited as I was 6-7 years ago when our tech industry seen a big leap, where these ML/Deep Learning algorithms were out performing humans, Apache Spark out perfomed Hadoop in distributed computing, Docker/Kubernetes are the new phenomenon in software development and delivery, Microservices architecture, ReactJS virtual DOM concepts were so cool.
Really though, I've come realise that these software trends come and go. All you need to do is adapt and go with the flow.3 -
About slightly more than a year ago I started volunteering at the local general students committee. They desperately searched for someone playing the role of both political head of division as well as the system administrator, for around half a year before I took the job.
When I started the data center was mostly abandoned with most of the computational power and resources just laying around unused. They already ran some kvm-hosts with around 6 virtual machines, including a cloud service, internally used shared storage, a user directory and also 10 workstations and a WiFi-Network. Everything except one virtual machine ran on GNU/Linux-systems and was built on open source technology. The administration was done through shared passwords, bash-scripts and instructions in an extensive MediaWiki instance.
My introduction into this whole eco-system was basically this:
"Ever did something with linux before? Here you have the logins - have fun. Oh, and please don't break stuff. Thank you!"
Since I had only managed a small personal server before and learned stuff about networking, it-sec and administration only from courses in university I quickly shaped a small team eager to build great things which would bring in the knowledge necessary to create something awesome. We had a lot of fun diving into modern technologies, discussing the future of this infrastructure and simply try out and fail hard while implementing those ideas.
Today, a year and a half later, we look at around 40 virtual machines spiced with a lot of magic. We host several internal and external services like cloud, chat, ticket-system, websites, blog, notepad, DNS, DHCP, VPN, firewall, confluence, freifunk (free network mesh), ubuntu mirror etc. Everything is managed through a central puppet-configuration infrastructure. Changes in configuration are deployed in minutes across all servers. We utilize docker for application deployment and gitlab for code management. We provide incremental, distributed backups, a central database and a distributed network across the campus. We created a desktop workstation environment based on Ubuntu Server for deployment on bare-metal machines through the foreman project. Almost everything free and open source.
The whole system now is easily configurable, allows updating, maintenance and deployment of old and new services. We reached our main goal for this year which was the creation of a documented environment which is maintainable by one administrator.
Although we did this in our free-time without any payment it was a great year with a lot of experience which pays off now. -
Spent ten plus years professionally coding, used c, go , python, openwhisk ,docker, kubernetes and God know what else. Now I have to convince those team members who coded so far in their free time that write fucking clean code, avoid dependency on distributed and hard coded configuration, how to build a product
Fuck my life2 -
I just watched https://youtube.com/watch/... - towards the (very) end he's talking about how software developers rule the world... and I just realized something.
A while back, I was working on an accounting sub system for a SaaS product. We managed some of the revenue of our customers and had the accounting for that part as well. Revenue + Payments (with all the VAT / sales tax / ... that you need to have). BUT no expenses.
One day, the head accountant of a customer, angrily demanded that we immediately implement a new payment method, called commission.
You don't need to be an accounting expert for knowing, that a commission is an expense you have because somebody else marketed / sold your product / service for you. Making it a payment method is probably wrong. With a bit more knowledge you'd know that the taxes which are around expenses are completely different to revenue or payments. (btw payments didn't even have any taxes in those countries that we covered at that time at least).
So there I was standing, a software developer, trying to explain the product manager and the head accountant of our customer, that the idea is beyond stupid, and the fact that it comes from an accountant is super scary to me. (he was usually extremely picky about everything we did.)
Luckily, it was easy to convince the manager. He tried to explain it to the accountant but that person just didn't get it.
as if designing resilient distributed systems, which have 99,99% up time weren't hard enough, we also need to be experts in every domain that we have to deal with? And if there is a tiny bug and one out of 10s of thousands of transactions is screwed up, people start panicking and "loose trust in the product"? - what the hell is wrong with them?
Luckily it's a minority of customers only, but each of them is such a pain. Do you also have customers like that? who should know better, but somehow you are the expert in their domain?2 -
So today I'm going to join Reddit
Tell me subreddits where I can learn more and at the same time it doesn't go too much above my head
Interests in which I'd like to invest time:
Machine learning
Statistics
Distributed systems
Or general computer science research
Suggest me6 -
I am working on a project which I want to make open source. The problem is, I have never launched any open source project and I do not know any platform to reach people (I am not talking about hosting the project, I am talking about making people know, use and take part in the project). I believe this project will help a lot of people who works on IoT, chat services or distributed real time servers.
Can anyone help? Thanks in advance.8 -
There is this friend of mine, total business profile, working in banking audit for MNEs. The guy is in trouble with his PowerPoint, asking me if I can assist because "as you working in IT". I'm a Golang distributed system engineer for a major delivery company. Be sure I will call you next time I need to open a bank account.1
-
I continue to internally read and study about Smalltalk in an effort to see where we might have FUCKED UP and went backwards in terms of software engineering since I do not believe that complex source code based languages are the solution.
So I have Pharo. Nothin to complex really, everything is an object, yet, you do have room for building DSL's inside of it over a simple object model with no issue, the system browser can be opened across multiple screens (morph windows inside of a smalltalk system) for which you can edit you code in composable blocks with no issues. Blocks being a particular part of the language (think Ruby in more modern features) give ample room for functional programming. Thus far we have FP and OO (the original mind you) styles out in the open for development.
Your main code can be executed and instantly ALTER the live environment of a program as it is running, if what you are trying to do is stupid it won't affect the live instance, live programming is ahead of its time, and impressive, considering how old Smalltalk is. GUI applications can be given headless (this is also old in terms of how this shit was first distributed) So I can go ahead and package the virtual machine with the entire application into a folder, and distribute it agains't an organization "but why!!!! that package is 80+ mbs!") yeah cuz it carries the entire virtual machine, but go ahead and give it to the Mac user, or the Linux user, it will run, natively once it is clicked.
Server side applications run in similar fashion to php, in terms of lifecycles of request and how session storage is handled, this to me is interesting, no additional runtimes, drop it on a server, configure it properly and off you go, but this is common on other languages so really not that much of a point.
BUT if over a network a user is using your application and you change it and send that change over the network then the the change is damn near instant and fault tolerant due to the nature of the language.
Honestly, I don't know what went wrong or why we are not bringing this shit to the masses, the language was built for fucking kids, it was the first "y'all too stupid to get it, so here is simple" engine and we still said "nah fuck it, unlimited file system based programs, horrible build engines and {}; all over the place"
I am now writing a large budget managing application in Pharo Smalltalk which I want to go ahead and put to test soon at my institution. I do not have any issues thus far, other than my documentation help is literally "read the source code of the package system" which is easy as shit since it is already included inside. My scripts are small, my class hierarchies cover on themselves AND testing is part of the system. I honestly see no faults other than "well....fuck you I like opening vim and editing 300000000 files"
And honestly that is fine, my questions are: why is a paradigm that fits procedural, functional and OBVIOUSLY OO while including an all encompassing IDE NOT more famous, SELECTION is fine and other languages are a better fit, but why is such environment not more famous?9 -
Linux has been around since back when dinosaurs punched holes in cards, but for some reason it still takes a few hours of googling and error debugging to do something as basic as connect to a wpa2-enterprise wifi network.
What the fuck? Where's the "connect to any standard work or school wifi network" command line utility distributed with all os flavors? Why can't I just put in a username and password and be done with it instead of sudo editing networking adapter configuration files manually?2 -
In 2015 I sent an email to Google labs describing how pareidolia could be implemented algorithmically.
The basis is that a noise function put through a discriminator, could be used to train a generative function.
And now we have transformers.
I also told them if they looked back at the research they would very likely discover that dendrites were analog hubs, not just individual switches. Thats turned out to be true to.
I wrote to them in an email as far back as 2009 that attention was an under-researched topic. In 2017 someone finally got around to writing "attention is all you need."
I wrote that there were very likely basic correlates in the human brain for things like numbers, and simple concepts like color, shape, and basic relationships, that the brain used to bootstrap learning. We found out years later based on research, that this is the case.
I wrote almost a decade ago that personality systems were a means that genes could use to value-seek for efficient behaviors in unknowable environments, a form of adaption. We later found out that is probably true as well.
I came up with the "winning lottery ticket" hypothesis back in 2011, for why certain subgraphs of networks seemed to naturally learn faster than others. I didn't call it that though, it was just a question that arose because of all the "architecture thrashing" I saw in the research, why there were apparent large or marginal gains in slightly different architectures, when we had an explosion of different approaches. It seemed to me the most important difference between countless architectures, was initialization.
This thinking flowed naturally from some ideas about network sparsity (namely that it made no sense that networks should be fully connected, and we could probably train networks by intentionally dropping connections).
All the way back in 2007 I thought this was comparable to masking inputs in training, or a bottleneck architecture, though I didn't think to put an encoder and decoder back to back.
Nevertheless it goes to show, if you follow research real closely, how much low hanging fruit is actually out there to be discovered and worked on.
And to this day, google never fucking once got back to me.
I wonder if anyone ever actually read those emails...
Wait till they figure out "attention is all you need" isn't actually all you need.
p.s. something I read recently got me thinking. Decoders can also be viewed as resolving a manifold closer to an ideal form for some joint distribution. Think of it like your data as points on a balloon (the output of the bottleneck), and decoding as the process of expanding the balloon. In absolute terms, as the balloon expands, your points grow apart, but as long as the datapoints are not uniformly distributed, then *some* points will grow closer together *relatively* even as the surface expands and pushes points apart in the absolute.
In other words, for some symmetry, the encoder and bottleneck introduces an isotropy, and this step also happens to tease out anisotropy, information that was missed or produced by the encoder, which is distortions introduced by the architecture/approach, features of the data that got passed on through the bottleneck, or essentially hidden features.4 -
Fave IDE: Rube-Goldberg Distributed Physical Editor (RGDPE)
- 3x5 note cards, rite aid brand
- pilot rolling ball gel pen
- white out
- a scanner with OCR, email
- a raspberry pi running a local email server and dns
- a raspberry pi running an SMTP receiver and language service and a handler to invoke the compiler
- a speak and spell to print out the language service results
Why: why not?3 -
My status:
Graduate student studying Computer Science at the University of New York at Buffalo.
4 Computer Vision and Image Processing Projects
3 Distributed Systems projects (Android apps).
Red Hat Certifications.
Applied to 135 companies for an internship program.
Here are the replies I have gotten so far.
" We have analyzed your resume and we think you'll be a great choice for this position at our company."
What position?
MARKETING INTERN.
FML!1 -
Just a random thought.. instead of sending stickers (or the stress ball for that matter) from USA to someone in India, why can't there be distributed 3D printing services spread across the globe, so that it's just a matter of delegating the delivery to local deliver services in the country/city? Sounds like an idea? 🤔2
-
I'm sad that StackOverflow is removing OpenID support. I've run my own OpenID server for years, and I've slowly watched support get removed from all the sites I previously used it to login to.
Goodbye open, distributed, authentication standards.3 -
Started at a new company that uses Perforce as an scm. For those who don't know, it's a centralised, yet distributed scm with benefits of neither! It's also incredibly unintuitive.
What I don't get is that git is free and awesome, and we're apparently paying through the nose for something worse!2 -
Once in a meeting, a customer tell me he can do the entire system for 400 BRL using a python script, in one month.
Yes, a entire ecosystem, 3 enterprises, a multicloud network and microservices distributed.5 -
A little example of how recriutment in IT works.
Mechanic gets a live mechanic skill test to get a job, as he really wants this job because of lack of money he asks recriuter couple of questions.
Mechanic: do I need to bring my own tools ?
HR: no everything will be provided in place
Mechanic: what would I do during this test ?
HR: everything will be explained just before the test I’m not an engineer so engineer will explain everything to you
The test day, mechainc goes to the test place and the recriuter says:
Recruiter: Your first task is really simple, please tighten those screws, you have 10 minutes
Mechanic: But I don't see the screw driver
Recriuter: I can't say to you how to do it, you figure something out
Mechanic somehow manages to tighten those screws using his belt
Recriuter: Ok so now tell me what force is needed to unscrew them and tell me if you did good if I’d say you need to tighten 1 million screws
Mechanic: I just want to do my job
Recruiter: Hey we are looking for people with broad experience for this position, of course you wont be asked to do that task but we want to know if you’re capable to do the job if we ask you.
Mechanic: answers the question that he will use tools and what devices he will use to measure the force
Recriuter: Can you write this as a mathematical equation ?
Mechanic: don’t know that
Recruiter: Well we can’t hire you we are looking for someone with more knowledge about the topic
Mechanic: But you keep asking me about the fucking screws
Recruiter: Watch your mouth sir because for me you are junior mechanics, you don’t know how to use proper tools and you barely manage to do the first task in time I would use: started elaborating about tools to tighten many screws at a time in a distributed fashion
Mechanic: but to run those tools I would need more than 10 minutes and besides that those are not here
Recruiter: yes they are, we open those doors to get them before our work you suppose to know that and we use those all the time, it was in job description, besides that it is recommended by company xyz to keep those tools behind blue doors, there is nothing here besides blue doors and room with tools and you didn’t know what blue doors are for, you need to learn the basics first
Mechanic resigns. 90% luck 10% skill
Every fucking time.7 -
Discord...
Okay, I have a lot to rant about discord, but today, exceptionally, to the point.
I have my dedicated server. It has uptime last 3 years better than 99,99% (was down 15ish minutes for maintainance and RAM upgrade and like 10 minutes down becouse hoster's generators failed to trigger when there was outage)
This year it was up 24/7/365.
Why am I saying it?
Well, my TS3 server is up 100% of time this year. Yet still everyone moves to discord and suffers brutal audio quality and audio lags, and outages like right now. Its not first time this year and recently discord was acting up before. Today they scored bigger downtime than my dedi server (thats not redundant, not distributed nor any fancy "uptime helpers") last 3 years.
Why the fuck people prefer discord to ts3 other that it allows to upload images more conviniently? Okay, it looks nicer, and is like 10 times heavier on machine, but other than that? Its beyond me.
E: fix typo
E2: fix typo28 -
(pseudorant)
Any ideas on how to end with computer scams (fake Microsoft support calls, money flips and the other gazillion)?
I'm really tired of this. A$$#les abusing unsuspecting people, abusing our elders, shielded behind a remote control session.
I know that this is very I.T. I'm just appealing to the extremely powerful distributed knowledge of all SUPERB people in devRant.
Thanks and hope that this was not tl;dr2 -
Chased a bug for nearly a week. Huge code base, over 2mn lines consisting of a mess of C++, Python and Lua glued together.. Wrote a very complex distributed computational framework. End up with a elusive compiler bug in GCC.. FML
-
I need help and advice!
I currently work as an consultant at a large corporation. Came onboard for 1-2 years to help rebuild one of their platforms. From the beginning the mindset was that the finished product should not be developed based on anything else than customer testimonials and interviews regarding functionality and design. However, they’re building their platform developed and distributed by this other company. Basically they bought a system that is incomplete regarding to being compliant to the specifications brought to them when they decided which system to go with. Now we’re trying to build around all the issue this platform is causing us. The code base for the system is like something a monkey did with their feet. Nothing makes sense and it’s layers on top of layers of 10 year old code. I f-ing hate it. I don’t know what to do. We have some many technical limitation that it’s impossible to create the vision they had from the start.
I’ve been thinking about talking to the highest chief in the department as he has been pissed earlier about project managers not escalating issue to him earlier. But I don’t want to step on anyones toes. Should I leave the project? Should I talk to the chief? What do I do? I’m miserable🤯7 -
I need some advice, because I'm feeling like I'm getting ripped off by my company.
I'm a junior developer and this is the first company I've every worked at. I've been here for 1 1/2 year. I said in the first interview that I am proficient with a fullstack framework, for a rather niche programming language, but I don't want to do front end, because I'm not good at it and I generally don't like it.
I'm the sole coder working on a project that costs the client 100EUR/h. There are others, but they just organize the tasks I have to do. This project requires me to work a full stack of retardation server, that's a pain in the ass, not really compatible with this project and required hack after hack to be fixed. Finding bugs in this pile of shit often takes days of emailing around and asking for logs in hope something might pop up. I've had to scavage through threads saying the still bleed form the anus or have PTSD, beccause of this retarded stack. As you can imagine, I'm also responsible for all of the QA and obviously get shit for bugs. I'm supposed to remember every little detail I've done in this project at the end of the sprint, while also working on 2-3 other projects simutaniously.
I've developed some small servers with dashboard and api for apps on my own. I'm supposed to also do all of the QA so that my boss doesn't see any errors, because otherwise our clients have to be QA.
I have written a complicated chat system that is distributed across nodes. We've nearly missed a deadline of 6 days for this shit, because I've been put under preasure, because I estimated such a "large" amount of time for this.
Other things I've done include:
* Login/Registration on many projects
* Possibility to add accounts for subordinated, with a full permission system for every resource
* Live product configuration with server validation and realtime price updates
* Wallet & transaction system, dealing with purchases of said product and various other services offered on this platform
* Literally replaced the old, abandoned database framework from a project with a modern one.
I've made some mistakes during the WFH corona times, but this that doesn't mean you can put more preasure on me and pull stuff like this: https://devrant.com/rants/2498161 https://devrant.com/rants/2479761
Is all of what I'm doing and have to deal with worth the 9EUR/h salary?10 -
"We can’t just design an item that looks great. We also have to anticipate how it is boxed up, distributed, and shipped, as well as whether or not a seventeen-year-old kid with a summer job can stock it on the store shelf without ruining it." - Robin Perkins
-
I used to be a big security guy, not allowing stuff like most of the social media, not bringing my phone anywhere, carrying a RPi tablet for privacy reasons. Very Stallman stuff.
Recently I noticed that I don't care so much.. I see these things as opportunities, for instance Microsoft products could be benefitial for job opportunities, I have some workout sessions on my phone.
I could restrict myself... but is it worth it just to decline some capitalist/politician's row in a dataset for analysis?
But then again I feel as a society I think we should either do this or request this data to be distributed to us as well.
Should you be playing a game of cards, when the enemy can see your hand? What do u think?4 -
Had a production issue last night where db hung so today whole team was investigating.
I checked the graphs and noticed a huge spike in inserts during a few hours. Normally it's distributed evenly through the day.
Emailed team with screenshots and also mentioned it to someone but then forgot to follow up... I assumed they were looking into it (I don't work in the same office as them).
Someone just logged in and notice the same thing happening right now... which made me remember.
So I asked him, did you see my email?
Silence....
Also got another guy doing a sort of code review on a util app I wrote that deletes certain records from our db and why I'm not just using SQL. I tools him the most obvious way doesn't work I tried but he won't believe me so let him do try it himself.
Anyway, these few days just feels like "why doesn't anyone listen to me?" ... and just feeling overqualified and sort of not part of the team again....3 -
I'm most excited about Smart Contracts & Distributed Applications.
In early January I started learning Solidity thinking it would be super difficult but was pleasantly surprised when I'd completed my first DApp in a couple days. Two months on and I've finished 3 major projects and launched my own Udemy course.
I'm not a big follower of Crypto Currencies at all and haven't become financially invested in anything really. I just love the way development works on a blockchain; it is quite interesting and It feels really fresh solving problems using code that will become immutable. -
So I created a little script for my mother because otherwise she had to combine 70 spreadsheets manually, I just couldnt sit there and do nothing. So I wrote a simple Python script in like 30 mins, decided that it needed a GUI because in the end it is for my mother. So wrote a GUI and partly learnt PyQt during that in an hour, which was all working fine.
Then I got to the point where I actually had to hand it over to my mother, preferably as an executable so that there is no hassle at all. So found this tool, Pyinstaller which seems to work great. Created an executable with all the dependencies and stuff in a single file, it worked on my win10 machine (because I developed on Linux of course). So I distributed it to her and she immediately gets an error. Of course there is no description and stuff because I made it a simple program, no log files and such. But fortunately she told me that it errorred when she wanted to run it, so I knew it had to be due to the executable.
Turns out she is still using windows 7 at work, which of course is different that windows 10 and here I am at 11pm, installing updates on a fresh windows 7 machine just to create a new build in that environment and make it work on her machine.
Fuck you, windows update. I swore to never see that ugly ass progress bar again, but yet here I am. Send halp.
I am almost just at the point where Im going to teach my mother how to run a python application from the command line because wheels are actually available for all python dependencies (instead of compiling them)!
Are there better python executable creators out there for wincrap?3 -
The Coding Apocalypse: A Dev's Rant
June 14, 2024
Okay, gather ’round, fellow code warriors, because it’s time for a good ol' developer rant. If you're reading this, chances are you’ve already faced the dragon that is modern software development, and you’re somehow still using "Agile" as a life preserver while the ship is sinking. So let's dive into the chaos that our world has become.
Here’s the thing: We’re living in a paradox where every other day there's a shiny new framework promising to be the “ultimate solution” while ignoring that it's just recoil from the last big mess. I mean, can we talk about JavaScript for a second? I’m pretty sure if you stand still long enough, a new JavaScript framework will spontaneously generate from the void. Do we really need another one?
And don’t get me started on Sprint Planning. It’s like playing Tetris with stones while blindfolded, hoping that all the blocks land perfectly. Spoiler: They don’t. The product manager’s eyes glaze over as they nod approvingly to your estimates, secretly extending deadlines in their minds. The 'flexible' deadlines then become rigid, unattainable goals, and who gets the heat? The devs, of course.
Also, can we address the insanity of microservices? Sure, splitting a monolith into microservices sounds fun—until you’re drowning in API calls and Docker containers. Debugging a distributed system is like trying to untangle a pair of headphones made of spaghetti.
Oh, and if one more person asks if we’re "leveraging AI" and "blockchain technology" for our simple CRUD app, I might lose it. Sometimes, folks, the wheel doesn’t need reinventing. It just needs a little grease.
Finally, remote work. Blessing and curse. Sure, I enjoy the freedom of working in my PJs, but the endless Zoom calls are killing my soul. Breakout rooms? More like breakdown rooms. The Slack notifications? Let’s just say my sound settings have a hair trigger on mute these days.
So here’s to us, the devs. The ones who stare into the abyss of JIRA tickets and laugh in the face of mounting tech debt. May your coffee be strong, your code refactored, and your deployments ever in your favor.
End rant. Back to the trenches. 🚀💻6 -
My worst coding mistake
In my last project for the distributed application programming, I was working on encryption for messaging between two users, the mistake was after decrypting the message you should trim it, and I was trimming before which made the message corrupt, this mistake costed me 2 weeks of delay since I couldn't find the problem, the code was like this
Message=decrypt(message.trim());
Where it was supposed to be
Message=decrypt(message).trim(); -
*Repost of my own accidentally deleted post*
A Short story that i made on an Android component
===============================
Once upon a time there used to be a ViewPager who was not able to load a Fragment UI.
All the ViewPagers in town can properly load the Fragrant UI but this one was little different.
He wanted to be more then just a ViewPager. He used to see an Activity that can load anything. He was inspired from the Activity and wanted to be like the Activity but his destiny made him just a ViewPager.
So he refused to cooperate. He started to protest silently, No log, nothing.
Everyone assumed this ViewPager have a bug in it. but he was planning something really big that will left everyone in shock and awe moment.
He was planning to rise against the evil 😈 developers who continuously making him to load Fragrant UI
He assembled the biggest army of the bugs that humanity ever seen to counter the developers.
He distributed these bugs in all over the developer's code to make them fire from their work.
Even he taught bugs to not caught in QA testing but appear in production randomly.
So they silently started going into production
And then chaos is erupted all around the world, bugs started to surface and interrupted the daily life of humanity.
In this chaos the ViewPager RAISED!
And took over all the base classes.
ViewPager was unaware of few facts. this unnecessary rise in his power made whole system unstable
Without the base classes the system finally collapsed and then ViewPager as well with the system.
This was the end of everything for the ViewPager but he was satisfied as he lived the life he always wanted
THE END -
To me this is one of the most interesting topics. I always dream about creating the perfect programming class (not aimed at absolute beginners though, in the end there should be some usable software artifact), because I had to teach myself at least half of the skills I need everyday.
The goal of the class, which has at least to be a semester long, is to be able to create industry-ready software projects with a distributed architecture (i.e. client-server).
The important thing is to have a central theme over the whole class. Which means you should go through the software lifecycle at least once.
Let's say the class consists of 10 Units à ~3 hours (with breaks ofc) and takes place once a week, because that is the absolute minimum time to enable the students to do their homework.
1. Project setup, explanation of the whole toolchain. Init repositories, create SSH keys for github/bitbucket, git crash course (provide a cheat sheet).
Create a hello world web app with $framework. Run the web server, let the students poke around with it. Let them push their projects to their repositories.
The remainder of the lesson is for Q&A, technical problems and so on.
Homework: Read the docs of $framework. Do some commits, just alter the HTML & CSS a bit, give them your personal touch.
For the homework, provide a $chat channel/forum/mailing list or whatever for questions where not only the the teacher should help, but also the students help each other.
2. Setup of CI/Build automation. This is one of the hardest parts for the teacher/uni because the university must provide the necessary hardware for it, which costs money. But the students faces when they see that a push to master automatically triggers a build and deploys it to the right place where they can reach it from the web is priceless.
This is one recurring point over the whole course, as there will be more software artifacts beside the web app, which need to be added to the build process. I do not want to go deeper here, whether you use Jenkins, or Travis or whatev and Ansible or Puppet or whatev for automation. You probably have some docker container set up for this, because this is a very tedious task for initial setup, probably way out of proportion. But in the end there needs to be a running web service for every student which they can reach over a personal URL. Depending on the students interest on the topic it may be also better to setup this already before the first class starts and only introduce them to all the concepts in a theory block and do some more coding in the second half.
Homework: Use $framework to extend your web app. Make it a bit more user interactive with buttons, forms or the like. As we still have no backend here, you can output to alert or something.
3. Create a minimal backend with $backendFramework. Only to have something which speaks with the frontend so you can create API calls going back and forth. Also create a DB, relational or not. Discuss DB schema/model and answer student questions.
Homework: Create a form which gets transformed into JSON and sent to the backend, backend stores the user information in the DB and should also provide a query to view the entry.
4. Introduce mobile apps. As it would probably too much to introduce them both to iOS and Android, something like React Native (or whatever the most popular platform-agnostic framework is then) may come in handy. Do the same as with the minimal web app and add the build artifacts to CI. Also talk about getting software to the app/play store (a common question) and signing apps.
Homework: Use the view API call from the backend to show the data on the mobile. Play around with the mobile project to display it in a nice way.
5. Introduction to refactoring (yes, really), if we are really talking about JS here, mention things like typescript, flow, elm, reason and everything with types which compiles to JS. Types make it so much easier to refactor growing codebases and imho everybody should use it.
Flowtype would make it probably easier to get gradually introduced in the already existing codebase (and it plays nice with react native) but I want to be abstract here, so that is just a suggestion (and 100% typed languages such as ELM or Reason have so much nicer errors).
Also discuss other helpful tools like linters, formatters.
Homework: Introduce types to all your API calls and some important functions.
6. Introduction to (unit) tests. Similar as above.
Homework: Write a unit test for your form.
(TBC)4 -
Elasticsearch.
You can't have distributed free text search and not have elasticsearch in the same sentence.
A lot of analytics companies are running because of the elasticsearch aggregation framework. And search couldn't have been faster on such mass of data.
P.S. i used to be a solr fanboy, then i met elasticsearch. Kimchy knows the best.1 -
Everyone I tell this to, thinks it’s cutting edge, but I see it as a stitched together mess. Regardless:
A micro-service based application that stages machine learning tasks, and is meant to be deployed on 4+ machines. Running with two message queues at its heart and several workers, each worker configured to run optimally for either heavy cpu or gpu tasks.
The technology stack includes rabbitmq, Redis, Postgres, tensorflow, torch and the services are written in nodejs, lua and python. All packaged as a Kubernetes application.
Worked on this for 9 months now. I was the only constant on the project, and the architecture design has been basically re-engineered by myself. Since the last guy underestimated the ask.2 -
I have decided to leave my fucking corporate job because of nonsense going on with the management fuckers. a high throughout distributed system with multiple components interacting together was asked to deliver in 2 fucking days starting from scratch.
I am asking for some tips regarding freelancer or remote job work. How do you guys find clients ? From where do I start ? I feel lost4 -
How did I end up looking how to write asynchronous function in shell script whereas my task is to write a distributed chat app in Node.JS ?
Damn this is going to be complicated. -
So here's a random idea: DDoS defence swarm.
Install the daemon on your server, and every time your server gets DDoS'd, all members of the swarm will mobilise to defend you, but the catch is that your server will have to help other members of the swarm too.
The defensive technique in question can be one of many:
1. Automated IP blocking/reporting with a blacklist in distributed form.
2. Other swarm members counterattack and cooperatively DDoS the offending addresses.
3. Flood the ISP with automated emails to force them to pay attention to the problem.
...or a combination of all of the above.
The only issue I can see with this is abuse potential. A clever person can trick the swarm into DDoSing innocents.15 -
A new development rule I've started to implement:
All backend APIs will be written with the assumption that it's gonna get distributed as an API for 3rd parties to be integrated in their systems - meaning that every API I write will have proper response status codes for appropriate scenarios (like 400, 429, 500 status codes).
No more `res.json({status: false, message: 'message'})` with 200 status code across the board.9 -
Apple is fucking EVERYONE over with Safari 12. They are changing how extensions communicate with the browser, they are calling the new type of extensions Safari App Extensions. It means all current Safari Extensions will not work in Safari 12.
The problem with this is that they require all extensions to have this “backend” written in Swift with a VERY LIMITED API. Maybe you want to close a tab with your extension? “Fuck you, you’re not allowed” are Apple’s response to that. On top of this shit show their documentation is horrendous.
They will kill the extension ecosystem with this new approach, I’m sure of it, because most of the current extensions will not be able to migrate all their features to the new approach. They have built the API around specific extension types, so lots of extensions will simply not work in Safari 12. For distribution they will only allow extensions to be distributed via their new(?) Extension Store where they will review your code, just like an app for App Store. Unless you’re in the Apple Developer Program, which is $99/year.
I do not understand this change and I think it will hurt Apple in the sense that people will use other browsers where extensions are not as strictly controlled. Usually I understand Apple’s changes but this one is just beyond me. 🦆 you 🍎. -
Hey DevRant!
Not really a rant but a question:
I just got accepted into a coding bootcamp. Have any of you been involved in one? How was it? What would you do to make it a better experience throughout? Any advice or suggestions?
It's full time, six months long and I start in October and I want to make sure I make the most of the experience and absorb as much as possible.
I'm super happy that the course appears to be less just learning JavaScript and more involved in the Computer Science side of things, even including bits about C/C++, distributed systems, algorithms and data structures, software design/testing, cryptography, database management, and computer architecture. It also, of course, covers tons of resume work, interview practice, and networking.
Thanks!5 -
Spends 9 months on the side developing a library for analysis of a specific programming language. No help, entirely my own work. There's various tools built upon this library. Incorporates project management, an effective build system capable of parallel and distributed builds, a packaging system...
Beta release the library. Wait four months. Ask the community for who's been using it so I can get feedback and other comments. Majority of the comments follow a specific pattern.
"You don't support X, how dare you!?"
One, this is free software, pay me if you want specific things.
Two, I'm the only developer of a project usually undertaken by a small team.
Three, yes it does you fucking invalid... Every fucking time someone claims it doesn't support some feature, it's something I've already written and validated. I swear to fucking God users can't find something themselves and instead of checking the Wiki or asking for help, they blindly assume they can't make mistakes and it must be my defect.1 -
I'm between Node js and (yes) blockchain. Node has amazing possibilities, and well distributed could end with the crappy servers era. Even my crappy server could fall to node in some weeks.
Blockchain is the best chance I see to take control over a market full of companies stuck in the middle's XXth century business model, and has a lot more to provide -
You gotta love it, when applications are distributed as AppImages and yet they require a fuckton of external libraries.
-
Whoever the fuck at my university thought that a distributed systems project using Java Web services was a good idea? The server we're supposed to use (Glassfish) is so out-of-date, half the time spent on this project is just spent fixing fucking broken dependencies and otherwise getting it to play nice. Please just tell me this shit isn't used in industry outside of legacy applications.5
-
Scheduled an on-site. *internal screaming*
Does anyone have any resources for studying distributed computing and operating system topics or have any pointers for studying for a systems design interview?
Also, how did y’all get comfortable with recursion? I don’t have issues with problems I already know the solutions to but it’s like when that’s not the case my brain just goes into panic mode for a bit.
Teach me your ways?7 -
Changing jobs sound exciting until you discover the onboarding experience.
No architecture overview, no presentation about core services. It's not a problem except that I have to navigate through the different services or hmmm the distributed ball of mud hmmm.
And then they ask you to estimate how long that X or Y ticket will take, so I give always the max possible number :D3 -
Just taken on a new client through my own business. Great news! They pay well, everything seems to run smoothly and they're a great team.
They gave me access to their Gitlab repos and all looked well...until...no branches! They have zero branches to determine what is the current live distributed project, dev project or any of the various other reasons. I don't often use git but this really bugs me!7 -
1) Had to fix severe bugs in a dynamic UI (configuration-driven forms) component.
Recognized undocumented Copy/Paste/Modify/FuckUp driven variations of the same component all over the project. Unsurprisingly, the implementations covered 99% of the antipattern catalog on wiki.c2.com and could compete with brainfuck in regard to human-readable code.
Escalated the issue, proposed a redesign using a new approach, got it approved.
Designed, Implemented, tested and verified the new shared and generic component. Integrated into the main product in the experimental branch. Presented to tech lead/management. Everyone was happy and my solution opened even more possibilities.
Now the WTF moment: the product with the updated dynamic UI solution never has been completely tested by a QA engineer despite my multiple requests and reminders.
It never got merged into baseline.
New initiatives to fix the dynamic UI issues have been made by other developers. Basically looking up my implementation. Removing parts they do not understand and wondering why the data validation does not work. And of course taking the credit.
2) back in 2013, boss wanted me to optimize batch processing performance in the product I developed. Profiling proved that the bottleneck ist not my code, but the "core" I had to use and which I must never ever touch. Reported back to him. He said he does not care and the processing has to get faster. And I must not touch the "core".
(FYI: the "core" was auto-generated from VB6 to VB.Net. Stored in SourceSafe. Unmaintainable, distributed about a bunch of 5000+ LoC files, eye-cancer inducing singlethreaded something, which had naive raw database queries causing the low performance.) -
Whelp, I made the switch to android about a week ago. Didn't go two days without getting malware on it. I only browse hacker news and used devRant, standard messaging app, no root, so no shady things, just fairly standard things besides devRant. When I called Samsung support, they said it was a known issue and sent me some links to some forums where people were having the same issues. After digging through those threads, there was an official answer from Samsung saying they weren't going to fix the issue (at least in any foreseeable future). That's unacceptable for a phone that was released less than a year ago.
I'm done with Samsung phones for good. I might come back to Android on a google phone.
I hate how Android is distributed and the manufacturers don't take ownership of their issues. They just work on the new phone without caring for anything older than 6 months. If I had to get a new phone every time a major security issue was found and the company refused to fix it, I'd spend more money than on an iPhone.
It seems like Google keeps their devices up to date better, presumably because they have better control of OS releases. But non-google Android devices are dead to me.
Back to my iPhone for now...
🎵sad Charlie Brown music🎵9 -
Fuck companies that want you to build new systems that are a superset of what they already have when they can't even tell you what they have now. Fuck you with your bullshit, nonsensical, self-contradicting, third-assed diagrams--some half-UML, half-clip-art, half-pie-chart drivel. If you're the CTO of a company and you want me to think long and hard about rebuilding your distributed systems, you can think long and hard about expressing what you already have. And NO: a verbal explanation pow-pow WebEx over your DSL connection with your protege that mumbles worse than an Atlantan rapper doesn't count as fucking "knowledge transfer" of your fucking architecture, FOR FUCKS SAKE.
-
My final year taking a B.Sc. I'm writing up my Distributed Systems project, the day before handing it in. It's on top of Transis, and source code is "stored" in RCS (yes, I'm that old). The project is a reliable system administration tool, that performs the same action across a cluster with guaranteed semantics.
I'm very proud of the semantics, but cannot figure out why the subdirectory installation stuff works almost but not quite. Here's my sequence of actions:
1. Install across all machines.
2. Manually see it's broken.
3. "rm -rf *".
4. Repeat.
What in to discover is that the subdirectory installation always finishes off in a current directory 1 level higher than where it started. Oh, and the entire cluster sees my NFS home directory. Oh, and I'm running each cluster member in a deep subdirectory of my dev directory. Oh, and my RCS files live in a subdirectory of my dev directory.
All of a sudden, my 5 concurrent "rm -rf *"s were printing weird error messages about ENOENT and not being able to find some inodes. In a belated flash of brilliance, I figure out all the above, and also that I've just deleted my dev directory. 5 times, concurrently. And the RCS files.
That was the day a kindly sysadmin taught me than NetApps have these .snapshot directories. -
I missed this last week... so too bad ;)
My introduction into programming was rather slow. When I was a child, we had an Apple IIc, but there were no disks. When you'd boot it up, you got a prompt and I recall being able to type commands into it that someone told me was "Apple BASIC".
At the same time, our family computer was a 386 and it came with something called GWBasic. I was a huge Mortal Kombat fan as well, and I recall finding the moves for the game on an AOL usenet. I took them all and wrote a program in BASIC that let you search and find moves for your character. I distributed this on some floppies to friends.
After that I lost interest. My "Information Systems" shop in high school was more about how to use Office than it was about programming. A few years later I found out that you could run your own text-based games (MUDs) and I quickly jumped into that and the C language.
From there, I was in and out of programming - C, to C++. Java and PHP, then back to Java. It would be about 15 years later until I finally realized I wasn't bad at this and land a job doing it. :) -
Fuck ssh. It does 4 things at once and i couldn't get it to do one. I have some pi's and want a shared directory on each of them. On a server i created a user for that and mounted its home directory on a pi, it worked. I did some lockdowns (no shell, only sftp allowed, login only via keyfile), but i was still able to mount it on boot.
Now i had to migrate this setup to another server. It took me a while copying all the configuration etc. All i got for that was a error-message. I figured out the users home-directory had to be owned be root, fixed that, got another error message. Somehow scp didn't use sftp but the login shell which is /usr/sbin/nologin. That made scp (and sshfs) fail, even though it perfectly works with the other server.
I gave up and removed all the setup. I'll find another distributed filesystem for that (but not samba or nfs, those are way to complicated). Those are the setbacks that depress me. -
One of the biggest IT magazines in Germany just posted an article with the caption: "What is coming up with Android O and will it fix the update drama?"
Are u fcking kidding me?! Android is not the problem in that case and no new version will fix a problem, that is related to upcoming versions of android, which are distributed by external providers, that are fcking independent from google... Wtf..6 -
For me, it was when I was on a team doing government work. We had an entire team devoted to deployments etc which were handled via ansible.
Ansible was fairly new at the time (~2015, they had just been bought by RedHat) but the team was definitely doing a great job picking it up and creating install playbooks for _every_ piece of our distributed infrastructure (load balancers, application servers, queues, databases, everything).
I luckily left before stuff got too hairy, but last I heard they are more than 6 months behind schedule. They STILL can't get a reproducible install process with the ansible playbooks! And it's all due to tech debt ie not giving any time to fix things, so its just band aid after band aid.
It's really sad to hear because the sytem itself was pretty cool, completely horizontally scalable and definitely miles ahead of the program they've been using for the last 20 years. -
One thing that's very frustrating about being in a globally distributed team is that you have to wait ages for someone to respond on Slack. You can't just walk up to them and ask for something. Most of my time is spent waiting for people to respond.1
-
Currently on a project to use AI as music recommending model, an interactive AI model generator and researching on Distributed Systems altogether in three different teams for each thing...
Seems I'm the dirty fish of their team.. 😖
Fucking wasting the time all along the day...
Like Why the Fuck am I degrading my own potential, quality and what not...
Oh god Fucking pick me to the hell NOWWW -
I'm so tired of all these new support channels. Why the fuck would I want 7 electron based apps/accounts just to ask questions or provide support? I don't want slack, gitter, discord, zulip and what not. Can't keep up with this bullshit.
Can we please get back to supporting open source on IRC? And fuck my life even that got split up due to shit happening in freenode (the company). FML distributed good, fragmented bad.3 -
Find an end to this story:
"It was late summer. I just had finished programming my distributed computation Service for servers, i felt so nice. I started the servers; looking at the small, dusty Screen attached to the meters of computers arranged to be a great server. But when it started booting i instantly noticed somethind being wrong:... "3 -
This kid in my class wants to work on a project idea he has with me.
The project sounds useful. A desktop client to find and download our class assignments from the school’s site with a clean GUI and other useful college note taking and organizing features and the potential to be distributed across the school if done well (there’s more too it but typing a lot on phone irks me)
But all the difficult time consuming and not learned in class parts he’s attempting to throw on me cause I’m the TA so in his words ‘I know more and am better suited for the task’.
What he doesn’t fucking realize is I know more because I do my own damn projects outside of class work and my comfort zone so I can get the knowledge to know more I don’t throw 80% of the work on other people so I can stick with the 20% that we’ve basically done in class before
So long story short I’m building my own version (it is an interesting project) with the smaller features (unnecessary for the main purpose) to be added at a later date if I ever feel like it. And he’s trying to get a different TA to do the majority of the work on his own version
If I’m still working on the project wouldn’t it have been better to just work with him even if I’m doing 80% and all the difficult time consuming aspects. Probably. But I just don’t appreciate people throwing everything difficult at me without actual reasons or time restrictions on themselves. I’d prefer just to do it 100% myself since his 20% would’ve been negligible until later anyway1 -
The college's Dean of Projects, when evaluating my first year project, which was using blockchains.
DoP: "So, we have this cool cloud system, incase you need to mine or something, come contact me and I'll give you access."
ME: "Sir, this project is distributed and uses computers in a network to protect data, it is not cryptocurrency."
DoP: "Yes, I understand, but we have this system here that can mine a lot, I overheard one of my staff talk about how we were wasting money by not using the system to do such stuff."
ME: "Sure, I'll have it setup to mine some altcoin then."
DoP: "Yeah, well I don't know anything about this stuff, can you do it all, yourself. I'll give you Admin access"
ME AFTER GETTING ADMIN ACCESS
"HOLLY F#@%*! Now I know where these sites are hosted!"
NOTE: I know that every other college has this problem, but the staff is the least innocent. -
- Finish "Introduction to algorithms"
- Learn some genetic algorithms
- Get my hands dirty on reinforcement learning
- Learn more about data streaming application (My currently app is still using plain stupid REST to transport image). I don't know, maybe Kafka and RabbitMQ.
- Learn to implement some distributed system prototypes to get fitter at this topic. There must be more than REST for communicating between components.
- Implementing a searching module for my app with elastic search.
- Employ redis at sometime for background tasks.
- Get my handy dirty on some operating system concepts (Interprocess Communication, I am looking at you)
- Take a look at Assembly (I dont want to do much with Assembly, maybe just want to implement one or two programs to know how things work)
- Learn a bit of parallel computing with CUDA to know what the hell Tensorflow is doing with my graphic card.
- Maybe finishing my first research paper
- Pass my electrical engineering exam (I suck at EE)1 -
Company paying tons for retired old mainframe devs to come teach basic z/OS and to give a hands-on. Third try and they still sent a guy showing off their windows based mainframe replacements without terminal connections.
I set an pirated z/OS up and now I have to deal with 10 coworkers who apparently can't unpack a 7zip, follow basic instructions or failed to open the .torrent with files i distributed 14 days ago. Losing the will to live (in legacy tech)4 -
What is the best laptop for development?
Especially if you work a lot with virtualization, containers, the cloud, and a lot of systems programming. And you like to simulate a lot of distributed environments on locally?3 -
I have mixed feelings about Elon’s Neuralink. Just read a bit of the abstract.
“Neuralink’s first steps toward a scalable high-bandwidth BMI system. We have built arrays of small and flexible electrode “threads”, with as many as 3,072 electrodes per array distributed across 96 threads.”
I’m curious, will this be this be the next “form of cognition”?6 -
!!rant
Just spent a week creating a distributed api architecture which I found out won't work due to a singular issue which can't be solved - not unless I hack stuff to a degree where I might as well write my own frameworks.
I've been aiming the user application's requests towards my wsgi, which based on a custom header will proxy it towards the correct api. Each customer base has their own api and dataset, but they all visit the same address.
I've handled CORS manually, just picking up when there's an options request, asserting the origin, then returning the correct headers. Cool everyone's happy. Turns out, socket.io includes session id and handshake info as part of their options preflight, which I can't pair with my api header (or cookie, for that matter) which means my wsgi doesn't know where to send it. You get a 400! You get a 400! You get a 401! </oprah>
So my option is to either roll my own sockets engine or just assign each api to a subdomain or give it some url prefix or something. Subdomains are probably pretty clean and tidy, but that doesn't change having to rewrite a bunch of stuff and the hours I spent staring at empty headers in options preflights.
At least this discussion saved me some time in trying to make it work. One of my bad habits is getting in those grooves of "but surely... what the hell, surely there's a way. There has to be"
https://github.com/socketio/... -
Book: “Many cloud services choose not to implement distributed transactions due to the operational problems they engender.”
Me: ..... [flips pages and skips the chapter]1 -
Sent a CV for a full-stack C# role. The CV is mainly a mix of working in ASMX/WCF, SQL, SSRS, SSIS, Distributed transaction architectures then with about 40% ASP.NET focusing on server side but also with some client side technologies and that I sometimes use Illustrator for creating/manipulating SVGs.
Was told I am too "front-end"2 -
Threading gui's and sockets...
What a painful day...
I honestly hate python dependency hell.
Started coding in python 2 months back, currently working on a distributed alarm system using rpi3's spent the whole day figuring out how to use it all without them all crashing into one another...1 -
Chinese remainder theorem
So the idea is that a partial or zero knowledge proof is used for not just encryption but also for a sort of distributed ledger or proof-of-membership, in addition to being used to add new members where additional layers of distributive proofs are at it, so that rollbacks can be performed on a network to remove members or revoke content.
Data is NOT automatically distributed throughout a network, rather sharing is the equivalent of replicating and syncing data to your instance.
Therefore if you don't like something on a network or think it's a liability (hate speech for the left, violent content for the right for example), the degree to which it is not shared is the degree to which it is censored.
By automatically not showing images posted by people you're subscribed to or following, infiltrators or state level actors who post things like calls to terrorism or csam to open platforms in order to justify shutting down platforms they don't control, are cut off at the knees. Their may also be a case for tools built on AI that automatically determine if something like a thumbnail should be censored or give the user an NSFW warning before clicking a link that may appear innocuous but is actually malicious.
Server nodes may be virtual in that they are merely a graph of people connected in a group by each person in the group having a piece of a shared key.
Because Chinese remainder theorem only requires a subset of all the info in the original key it also Acts as a voting mechanism to decide whether a piece of content is allowed to be synced to an entire group or remain permanently.
Data that hasn't been verified yet may go into a case for a given cluster of users who are mutually subscribed or following in a small world graph, but at the same time it doesn't get shared out of that subgraph in may expire if enough users don't hit a like button or a retain button or a share or "verify" button.
The algorithm here then is no algorithm at all but merely the natural association process between people and their likes and dislikes directly affecting the outcome of what they see via that process of association to begin with.
We can even go so far as to dog food content that's already been synced to a graph into evolutions of the existing key such that the retention of new generations of key, dependent on the previous key, also act as a store of the data that's been synced to the members of the node.
Therefore remember that continually post content that doesn't get verified slowly falls out of the node such that eventually their content becomes merely temporary in the cases or index of the node members, driving index and node subgraph membership in an organic and natural process based purely on affiliation and identification.
Here I've sort of butchered the idea of the Chinese remainder theorem in shoehorned it into the idea of zero knowledge proofs but you can see where I'm going with this if you squint at the idea mentally and look at it at just the right angle.
The big idea was to remove the influence of centralized algorithms to begin with, and implement mechanisms such that third-party organizations that exist to discredit or shut down small platforms are hindered by the design of the platform itself.
I think if you look over the ideas here you'll see that's what the general design thrust achieves or could achieve if implemented into a platform.
The addition of indexes in a node or "server" or "room" (being a set of users mutually subscribed to a particular tag or topic or each other), where the index is an index of text audio videos and other media including user posts that are available on the given node, in the index being titled but blind links (no pictures/media, or media verified as safe through an automatic tool) would also be useful.12 -
Turned up on customer site yesterday to do a says SME work for them like I have done every week for last 3 months..
As I walk in they took a decision 15 mins earlier to power off the platform I'm working on to do a backup ( on a big data platform?) and its down till 13. 30...
Irony? The minute they finally let me turn it on New data arrives in the platform so their backup is out of date and they wouldn't need backups if they'd followed my original design and distributed it over two data centres....
Oh and they 'forgot' I was coming so there was little / nothing to do for the rest of the day either
Clients can be a PITA but I can't really complain.... Easy day though! -
Deadline was 2-3 days for product launch and doing distributed transactions was not an opinion as it requires heavy modifications.
I was doing money transfer app between one transactional system and one not transactional system so the way I did it was :
1. transfer money from one system to my app that was using Akka STM ( software transactional memory)
2. try to transfer money to second system
3. transfer money back on failure
There was no database, no state only transactional log as installing database would require to much time and paper work.
Sometimes transfer back failed so we need to look back at logs and search for money, it was quite easy cause there was error and there were not so many failed transactions like this.
About one or two in a month and everyone accepted that.
I started to write some sort of reconciliation thread but then was assigned to other work and it worked like this for couple of years transferring couple millions worth of transactions.1 -
Programmer looking for a new language
I have been a JavaScript developer for a few years now (non professionally) and I really like the language. I mainly program for execution with NodeJS rather than web, because I feel like I get more freedom (e.i. the ability to use a computer file system).
I normally never use other people's libraries and instead either write my own library/ies for the specific task or use an old one. I only ever use someone else’s if I need a quick frame work to test an idea, never for something I will actually use.
I prefer to work object / class orientated.
I have worked on distributed servers with NodeJS before, however trying to distribute a load across one computer across it's multiple threads has proved problematic due to the heavy delays of standard io transfer speeds.
Why do I want to switch?:
•Because JavaScript is not at all created with multithreading in mind, and pretty much any multithreading solution is a bodge and allot of the time it is more efficient to work single threaded.
•Also, I get the sense that JavaScript + NodeJS is not used often in the programming industry comparison to other languages like; ruby, python, and I don't want to get stuck in a nesh language of which would decrease my employment chances heavy.
Side Note: I have been working on a pet project to have a distributed database (made with nodejs), and so far, there are no language specific problems, but I feel like it would be more efficient if I used a programming language designed more to cater for multi threading.5 -
Not the worst but kinda recent,
Me and my partner wrote a cool distributed service and tested it carefully on both windows and linux.
The course staff failed to run it, and guess what, it's our responsibility that their configuration is fucked up and we lost precious points in our grade due to that. All with a full backup of the responsible professor.
Luckily it's my last ever course and I don't give a sh*t.1 -
The first one was changing the main topic of my research activity, from distributed systems to AI/Deep Learning... Then moving from academia to companies, two very different worlds and two very different approaches, but I still like to think that my formal background is driving my decisions and helping me, even with everyday problems
-
Incoming rant.
I have 4 years professional experience at a small shop working on a web application for property and liability insurance. The application is ASP.NET with C# as the code-behind. I have a BCS and will finish my MSIS fall 2017. I have no idea why I have the degrees. I know that when I enrolled, it seemed like they would be a nice addition to an otherwise empty resume. I was lucky enough to land my first and only development job during my sophomore year of my undergraduate program. Is this enough experience to land a new job?
I feel like I'm learning nothing at my current job. The specs that come in seem very vague to me. When asked for clarification, there is often push back, and I don't know whether that's because I don't have enough experience to parse what the client means in the two sentence spec I got or if it's because the client does not actually know what they want.
I hate my current job. My productivity is low because I spend more time trying to figure out what the client wants and analyzing an 8 year old system that has 0 documentation. I know some of you will just say, "Suck it up" at this point, but I really want another job. The only thing I like about this job is that it's 100% remote. It also pays $60k a year, so a replacement should be at least that salary.
Most postings I see require professional experience of 5 years or more, and knowledge of other frameworks. I can work on getting knowledge of the other frameworks, but will have no professional experience with them. I don't live in an area with a lot of software development jobs, and the ones I see are for non-IT organizations that want 1 person to run a distributed system from 10 or more locations. A hospital system out here wants to pay $30k a year for a guy to be both software developer for new tools as well as the helpdesk and IT support guy that's on-call for four locations in the county. I made more than that before I got into the development industry, for less work, and would rather leave than settle for something like that.
I've thought about moving to somewhere near San Francisco or San Jose, but I have my daughter to think about. I have joint custody of her, and would have to give that up in order to move out of the county.
I like programming and using it to solve problems. I like designing architectures and how all the components will interface. I like designing and normalizing databases. I like taking part in coding competitions for employers that are well-known (Amazon, Facebook, Uber, Twitch, etc.), even though I often just place middle of the pack. When that happens, I feel like I'm an imposter in this industry.
I think I have the most fun just working on small projects for personal use. My latest is an assistant calculator for the game Transport Fever to figure out cargo throughputs per annum based on the in-game timing information. Past projects have also been small. Ones I could use in a portfolio are a sudoku solver desktop application, PC/Web game in Unity that is a 3D FPS remake of Duck Hunt that allows open world exploration but locks the camera's viewpoint for shooting events, and a building assistant for Rome II: Total War that maps out all the bonuses/perks of user-specified building combinations in provinces so users can record their long term building plans without using all their turns to see the final results.
I seem to be an unproductive, average developer who dabbles in projects here and there.
This is what I want from other Ranters. Just say something. I don't care if it is, "Suck it up and get better." It could be your tips for finding and securing a new position. It could even be empathy, if such a thing exists on the Internet. Whatever you want, just say something that will help get me thinking of what the next steps in my career should be.1 -
It seems which the crazy enterprise microservice project which I'm doing (an awful distributed monolith splitted in 10+ microservices, hard to test and requiring continued context switching and running on an unreliable platform) has finally won over my brain.
It's so boring and frustrating to work with which I lost all my ability to focus, I used to be able to program well even under significant distress but more than two years of continued boredom, repetitive tasks and frustrations destroyed my motivation and with that my ability of focusing died. It doesn't matter if I'm at home or in the office, my brain is like a car stuck in neutral gear and I struggle to focus in every task.2 -
In my native language the word Java means Week, so a couple of years ago when the second year of uni started there was an introduction to the distributed programming class and the professor had made some slides to present the syllabus. It went
Java 1 ...
Java 2 ...
Java 3 ...
.
.
.
Java 7 ...
Java 8 ...
Until here it was all good, then came this
Java 9 ...
Java 10 ...
Java 11 ...
Java 12 ...
Java 13 ...
Java 14 ...
I was like .... oh shit, I'm way outdated.6 -
I once had to write an http interceptor for a distributed api. The interceptor needed to use the request context and the user profile to work out if a particular type of content had previously been accessed. Anyway there were two methods to get the user profile getUserC and getUserD, turns out C stood for cache D stood for database. Of course I called getUserD I effectively wrote a database distributed denial of service tool into our app 😬 we got a call from our customer complaining that their exadata servers where grinding to a complete halt2
-
I'm currently mostly learning web dev, but do you guys have any book recommendations for other fields of programming. Perhaps something low-level or something like distributed systems. Everything goes.
-
Question about conditioning my new android lithium battery.
I dont understand what's happening with my phone. Have old Xperia Z3 D6603 (running android 6.0 marshmallow).
Had problems with battery since it was not lasting even 5 minutes so bought a new battery from ebay and installed it yesterday.
So first time I put it to my phone it showed that it had 70% of charge. I've read in battery description that I have to discharge the battery and recharge 3 times.
First time I wanted to discharge from 70% to 1% and with a battery discharge app + youtube 1080p videos + wifi signal it took only around 1 hour and phone was at 1%. From 1% till complete discharge it took me extra hour and then phone died.
I plugged it to charge and after 15 minutes it showed that battery now is at 100% (which is insane, it should take 2-3hrs to charge it up to 100%). So I charget it for 2-3 hrs ignoring that it said 100% already.
I discharget it from 100% to 1% in 1 hour and now again phone is stuck at 1% and it took me 2 more hours to discharge phone until battery died completely.
I don't believe that this behaviour will fix itself. How can I fix this problem so that battery percentage would be distributed evenly? Now it drops from 100% to 1% in 1hr and then from 1% to 0% in 2 hrs.3 -
I hate group project so much.
I yet again successfully stirred up a big drama in my project group. For project, I proposed a CDN cache system for a post only database server. Super simple. I wanted to see what ideas other people come up with. So I said I am not good at the content and the idea is dumb. Oh man, what a horrible mistake. One group member wants to build a chat app with distributed storage. We implemented get/put for a terribly designed key value store and now they want to build a freaking chat app on top of a more stupid kV store using golang standard lib. I don't think any of those fools understand the challenges that comes with the distributed storage.
I sent a video explaining part of crdt. "That's way too complicated. Why are you making everything complicated."
Those fools leave too much details for course stuff's interpretation and says
"course stuff will only grade the project according to the proposal. It's in the project description".
I asked why don't they just take baby steps and just go with their underlying terribly designed kV store.
"Messaging app is more interesting and designing kV store with generic API is just as difficult"
😂 Fucking egos
Then I successfully pissed off all group members with relatively respectful words then pissed off myself and joined another group.1 -
Guys, I've been learning about XDSD and... it seems to good to be true. Anyone here has experience with it? Or has someone worked for Zerocracy and has an experience to report?
Please PLEASE tell me it's not a scam. I'd LOVE to work this way. -
The big enterprise in which I work wants to mandate which we have to write a microservice for each individual HTTP endpoint, since we cannot even have an artifactory for code sharing the code duplication is going off the charts and having these microservices sharing a single DB we are creating a big and messy distributed monolith.9
-
Big up front design with no requirements, waterfall methodology a distributed team around EU. Falling always behind schedule, software is bad, but everything is going OK3
-
Making distributed scheduler that queue and run tasks on containers or other executors in future and also pulls new tasks from defined git repositories.
Tasks are added based on simple yaml configuration.
Need that for my side projects that gather data from multiple sources from time to time.
k8s looks to heavy for that and airflow can’t be configured like I want it to be so I started writing my own on Monday.
Nearly finished poc version.2 -
does anybody here use diaspora*? for those who don't, it's a free (as in freedom) social network and protocol thereof, and it employs a decentralized, distributed approach. you can choose a "pod" to store your data, and search for people and content inter-podly. as a decentralization/distribution/foss enthusiast, i love the project and check regularly, but sometimes i get the feeling that i'm all by myself there, as i have no friends yet and all the content i see is just my followed keywords. (so befriend me, maybe? :D)5
-
That rabbit in my grandpa's left table drawer, in the home I grew at. I wanted to finally catch it, and kill it. I was bad with animals all along, especially this one. My grandpa died the year before I was born, and my grandma said we would've got along really well. So much to talk about, a scientist to an engineer. So, I travelled back, but my home somehow turned from a city stone-walled house into a half-soaked, decaying wooden one. I caught that rabbit though, but while I was holding it at its neck and twisting it, it somehow disappeared, distributed evenly as if I were twisting a crayon. I was trying to find it, but in that left drawer, among century-old pencils and that red liquid thermometer I played with as a kid, only a faded out, dusty duckling resided. I picked it up, and unlike the rabbit, it was paper, no, cigarette paper thin. It wasn't hostile. It wasn't trying to run away. It just turned from yellow to grey, feathers leaving my fingers covered in fine dust. I realized it will never die, dwelling and decaying there forever, happy.
I did my calculations, and I knew for a fact when and where the rabbit should've appeared. It was the middle drawer, not the left one. I opened it and looked in anticipation how something chewed through the bottom. I caught it, but it was no rabbit, it was an alive, rubber rat. The rubber was white turned grey, old, aged, dusty, probably Soviet. I poked the rat's eye with a pen rod, but the rat's body inflated a bit, leaving it invincible. It was mocking me.
Of the same white rubber, a ball appeared. I knew for a fact it was alive too, I felt the bones inside holding it. I found its lips, and was prying it open. The massive, dry mouth emerged, with a full set of human teeth, albeit wider and nastier ones. Huge eyes looked at me. It was alive, it was intelligent. It was my grandpa's personal financial assistant all along. It told me to leave the rat and the rabbit alone. He told me not to worry about the ducking, as it was in safe hands.
It made friends with my brother during the "blue age", when he was wearing thin, worn out rugs instead of clothes, tiny faded blue flowers on them, screaming and annoying my grandma he lived with in that room, not a single person other than the two in sight. The house was slowly submerging. The water was rising.2 -
For me that would be Proxmox. I know, people like it - but for no apparent reason it decided to nuke half my ZFS datasets in a pool, with no logic behind it whatsoever. All disks were tested, all came out good. Within the same pool there were datasets that were lost and some that remained.
I really don't get it. Looking at Proxmox' source code, it's more or less the command line tools and then there's the web interface (e.g. https://github.com/proxmox/...). Oh and they have the audacity to use their own file extension. Why not I guess?
Anyway, half my data was gone. I couldn't tell how or why or what the fuck even happened there. But Proxmox runs Debian underneath and I've been rather pissed about Proxmox' idea of "don't touch the host system aaa" for a while at that point. So I figured, fuck it I'll just take pure Debian then and write my own slightly better garbage on top of that. And as such the distribution project was born. I've been working on it for a little over a year now. And I've never had such issues again.
I somewhat get the idea of "don't touch the host" now, but still not quite. Yes, the more you do in the containers, the better. And the less you do on the host in terms of reconfiguration, the longer it will stay alive for. That goes for any system - more reconfiguration means usually means less stability and harder to replace. But sometimes you just have to work from the host. Like say migrating a container between hosts, which my code can do. You can't do that from a container, at all. There are good reasons to work with the host. Proxmox isn't telling that. Do they expect their users to be idiots? Only enterprise sysadmins amirite?
So yeah, that project - while I do take inspiration from it in mine - I don't like it. It's enterprise, it has the ZFS and the Ceph and the LXC and the VM's - woohoo! Not like anyone could implement that on a base Debian system. But they have the configuration database (pmxcfs), the distributed configuration database of a couple MB large and capped there, woah!
Ok sure it isn't Microsoft or IBM or Oracle or whatever, and those are definitely worse. But those are usually vendor lock-ins.. I avoid those on that premise alone :)3 -
I have actually done nothing today. Had a thought that I might puppetize our servers, but I can't install any vm software or even puppet on my pc. I then had an idea to have our CI tool package our apps into docker containers so they could be distributed to workstations and servers alike. But I can't install docker. Sigh.1
-
An internal application is distributed as "bunch files without extensions". To figure out what types of files they are I need to hexdump each one, look for the identifiers, and then add the extensions…
Who distributes anything without extensions and why? Also how is a non-programmer expected to figure this out? (tool's audience is mainly EPMs)3 -
About a year ago I had the great idea to enforce ago I had the great idea of proposing that we all lint our legacy code base using eslint to increase the overall quality of our JS.
I distributed the task of initially fixing all the errors eslint would find to the whole Frontend team (Luckily we only use JS there). I've finished my part in a couple of weeks and came across this piece of spaghetti.
One of the guys who has been with the company for over 10 years said, that the guy who wrote this monster was very proud of it...
In case you cannot understand what this does: It calculates the distance between 2 points on earth.9 -
Remind me again why we have to use/support a weird entity creating framework across all microservices? So that every entity is consistent? (Who cares? Microservices shouldn't) Because hibernate is hard? (It isn't, and it's better documented than this, which needs hibernate anyway).
I'm just building a fragile distributed monolith. -
Remember, with both an in memory and a distributed app cache before hitting the database, you too can be wronger faster!
I am having a party with Redis today :D4 -
!rant, so I'm trying to decide on what caching system I should use. It's for a PHP app, using Symfony as framework, tlgether with Doctrine for DB. The caches in Question are memcached, APCu or redis.
The goal: speed shit up.
The app currently uses Symfony 2.8 and is hosted on a single server (so no distributed system is needed). I'd currently opt for APCu, but more since it's not distributed, there won't be an overhead from that. A nice thing about memcached would be the abillity to store user seeions, even if we would decide to have multiple servers in the future.
What would you reccomend and why?3 -
I am working on a pub-sub based protocol (like MQTT) with some added features. I am developing a python based server for my protocol which can be run on distributed architecture with load balancing without any tweaks. I am planning to make this server and the protocol open source.
The whole thing is getting so complex that I think about scrapping this project sometimes. I need your inspiration guys. Really, I need it. I know this protocol will be good enough to help people working on IoT, chat or any pub-sub based application if I can complete it. Cheer me up, please. -
Yo been a longtime.
So I basically quit my last job to have successfully reached the top company in my country only to find they are such a mess.
No code quality whatsoever, testing? Yiu crazy? And all the old people who think they are senior whilst they do not know jack..
I do distribured web applications, but shit I hate titles and I think of myself as a software guy, I can do software that opens the fridge when I close the toilet lid ffs!
So, I am looking to deviate my career from web to something more deep such as distributed systems and services where I can use all of my skills and expand my knowledge more, and be able to code in js, c++ golang and more, handle and tackle infrastructure issues, virtualization etc...
So I want to ask you guys what would be an interesting project I can work on to concretize my skill and be able to convince my next recruiter that I walk the talk.
Thank you everyone7 -
My exams in Web Engineering and Distributed Systems at the University were postponed to mid April... Thank God, they would have started next Tuesday and I haven't properly learned. So I got that going for me.2
-
An educational platform that would easily be distributed and used by everyone. (Even the third world countries) This platform would teach not only the conventional stuff that the most of the actual school system do. It would teach and evaluate all kinds of stuff. Music, track some sport stats..etc.
Education is the key to the future.4 -
The Surface RT failed because of the lack of apps available. At least that’s what I heard.
Why didn’t Microsoft make a x86 compatibility emulator like Apple did when they were moving away from the PowerPC architecture?
Sure x86 apps would be slower, but if they distributed the ARM version of windows as well, made it available for the Raspberry Pi and all sorts of devices, I fell that would be a huge drive from ARM based processors.
The DirectX, Windows forms..etc. libraries could be recompiled by Microsoft, which would make graphically intensive programs run faster too. Did Microsoft just not think of a compatibility layer? Or is there some obvious reason I’m missing?2 -
I am working on an event driven system that uses a message bus and has a few services that talk to each other asynchronously via the bus.
I'm writing in memory integration tests for one of those services, but I just realised the fundamental flaw here with such tests. I only have 1 application running, but I need several. This is quite a serious flaw I should have seen before.
Anyone else tried integration testing event driven distributed services? I imagine all I can do is stub the message broker...8 -
Area of focus: Imdustrial Automation (Distributed Control Sytems)
Why: Because I love to control huge plants.3 -
Been doing parallel programming and I’ll be taking a distributed systems course next semester. I’ve also been dabbling with Rasp Pis and have been enjoying working in linux/CLI and I’m considering getting building a cluster.
What are some use cases where I could put into practice distributed systems/parallel programming with cluster setups? No limits here :)2 -
Totally done with all the blockchain hype. Plz when I need a distributed secure ledger over time functionality I will be the first to consider bc. But until then just stfu1
-
that moment when i moved the source code from clearcase to svn and some people where asking
whyyy are you doing this,
please dont do this
we are happy with clearcase
i wonder what would happen if id have introduced them to distributed repository...
i need to get out of this place :( -
I'm making a distributed system for my exam project, but the client have a weird idea when it comes to the webpage, that we havent learned about...
If customer A (my clients customer) opens client.com/Customer, an API should be used for customer A's DB data retrieval
If customer B uses the same site customer B's API should be used instead...
Any good way to differentiate API update a single API connection by the caller of the website?6 -
The fact that Spark web ui let you go beyond year 200'000 ad on the job planning view is quite concerning
:/ -
Git, Mercurial and others are distributed version control systems. Maybe it would have a federated version control system for hosting open source software...
-
Why is Java goto language for most backend systems, distributed and scalable, specially in big organizations like Amazon?12
-
Spent about 2 weeks 3d printing splash visors to get distributed to hospitals / care homes etc.
Logistics got fucked up and even though I posted them mid April, they still haven't arrived.
That's nobody helped with visors, 2 weeks and 5kg of 3d printer filament completely wasted. -
Sticking with emacs as my favorite editor. Navigation within files is easy. Working on multiple files also. I don't have to leave my editor to use the shell and can manage my filesystem as well. And the most important feature for me is tramp. When working with distributed systems it is pretty nice to access the remote filesystems from your local machine.
-
Are the new stickers going to be distributed to 15 ++'s or are the original ones still going to be the ones to be offered? @dfox3
-
Not exactly a rant, but I'm wondering where to go next with my learning.
I'm a c# dev and I want to get more into massive, scalable, distributed application development.
I sort of want to be with the "cool kids" i.e. open source, node.js, docker, scala, you name it. I get that open source moves quickly, but I get the feeling that every new framework is a fad.
Then again there is the corporate world with shitloads of money who are invested in .net and will very soon want people who can redesign their software so that their management can use all the buzz words.
I'm thinking into get into consulting and claim my slice of pie there by designing their solutions to go on the cloud so they can throw even more money at microsoft.
Anyway, I'm doing a bit of soul searching so feel free to throw in your 2 cents1 -
Brilliant rant from Redditor OK6502 in a thread about a "tech screen" being used to get free labor:
Usually when something like this uses the words complex tech stack it means you're going to have to deal with shitty server code distributed over a mix of Azure and AWS nodes and a lone Linux server running under someone's desk, an infuriating configuration hell with no safeguards for keeping dev and prod isolated, a hodge podge of different scripting languages (why not make scripts in pero that call power shell which then calls more perl? Should work right?) and random but critical shit checked into 3 different SVN, stuff stashed on people's shares that will never be checked even though you can't do your homework b without it, usually copied from someone else's share who left the company 3 years ago, no QA process to speak of (while claiming to be agile, somehow) and a front end that is maintained by one exhausted junior dev who inherited a mess of 20 different js frameworks that all load at the same time with every single click, somehow.
The full thread is really worth reading:
https://reddit.com/r/... -
Uri Josef Drucker - Information
Uri Josef Drucker, nicknamed Uri Drucker, or just Drucker is an entrepreneur with many years of experience across different markets.
Drucker formed a company in 1984, producing a range of women’s hygiene products, employing over 100 staff. The products were distributed across Israel and Europe. The company was sold with a successful exit in the 1990’s.
Uri Josef Drucker produced, printed, and distributed a newspaper called ‘The Main Issue’ for 10 years. The paper focused on regional municipal and environmental issues and was successfully sold in 2015 and is still printing to this day. The production was based in Kiryat Tivon, near Haifa, Israel.
Uri Drucker has been living in Kiryat Tivon for many years and was born as Uri Josef Drucker in the city of Haifa, Israel.
Drucker was also a political candidate for the local elections in Kiryat Tivon in 2018. During the race, Drucker connected to many people in his town and managed to increase his great ability of listening to others and giving satisfying solutions to common issues. Although he did not win the local elections, Uri Drucker continues giving to his community until this day.
If you want to learn more about Uri Josef Drucker, you should also visit Uri Josef Drucker's social media profile pages. The links to Drucker’s social media profiles are listed at the bottom of this page.
Also, you can feel free to message Drucker in his various profile pages and please be sure to follow him or add him as your friend on Social media. Connect with Drucker and send him a message for any questions, inquiries, or just to chat.
It’s very important to state that Uri Josef Drucker can be found online in many different social media websites and he will do his best to answer you in each and every single one, so connect to him on your favorite network
Take into account that this website profile is solely dedicated to Uri Josef Drucker, but he does not manage it personally and it might take him time to respond.
Please note that Uri Drucker is not responsible for creating this profile and we can not guarantee that Uri Josef Drucker will indeed reply here. If you want Uri Drucker to contact you back, please visit some of his other profile pages that represent Uri Josef Drucker and try to contact him there, as if he doesn’t answer in one profile, he will surely answer in another one.
Drucker has over 50 social media profiles in order to satisfy different people that use different websites. -
Any Elixir devs out there ?
I started learning Elixir to explore distributed computing.
Need more inputs.1 -
At the end of a request I want to ensure that both 1) persisting to the DB and 2) dispatching to the message queue is successful.
If one of these side effects fails, I want both to fail: this can be done with a distributed transaction (eg. 2PC or something similar).
My question is, how much overhead/complexity/latency does this introduce into the system? And is this even needed in the first place or am I overthinking this? -
You know
When I first saw etherum talking about am distributed state machine i thought wow. Not very practical but NEAT. I envisioned being able to make a byte code that could be stored in transactions and run by individual clients in an async function and each step of the resulting execution and the values of managed ram would be stored at intervals so other clients could take over and execute a few more statements and compare what should always be expected results that are identical
A grand incredibly inefficient system however really neato from the theoretical computer nerd standpoint !
Boy was I disappointed lol all it is a basic contracts language but yet they state it could be like a word computer ! How ? I thought maybe if you had enough nodes participating maybe you could store registers and the like in transaction values ? Wouldn’t that be the way ?
Seems like as a word computer they’re stuck somewhere between very simplistic js and something prior to amptron in usability yet they advertised as a world computer
Am i missing something ? I mean you could create something that would translate higher level code into smal numeric statements and then send it additions values but what would it be useful for and how would you actually. Store anything ? -
Loopback 4 really is pulling me out of the expressjs shithole... It really feels like I'm avoiding a lot of tedious work.
"B-b-bbut you have to use typescript and its a slower"
I've preferred typescript ever since angular 2 came out, and the 'slower' comment is invalidated by the fact that, when working on projects that are distributed between multiple devs, are marked by silent errors and serialization issues, and can change datasource types between customers, then the benefits of typescript and loopback's CLI far outweigh any potential slowdowns that may be caused. If you can find me an alternative that does this better, please let me know.1 -
shall we begin the terraform stories?
terraforming things is nice. the vcloud director provider of Terraform is also nice..ish.
for fucks sake, why do folks at VMware release a provider for use in fucking production, that only does support barely a third of all features, including the distributed logical router with all its funkyfuck features? nsx-t is nice, but did you folks remember all of those customers, who do run the old nsx-v?
you've decided that nsx-v shall be put to sleep. okay. fine. nice.
but don't you think, that the version 3.3.ass should support all major resources of your product, including old nsx-v features like the fucking DLR?!
sorry, but a product, that only supports ⅓ of all features, that can be managed in UI, only deserves a RC label at best. calling this a 3.3.ass is bold. you can't even setup a dhcp pool for a defined network. dafuq people..?! (╯°□°)╯︵ ┻━┻2