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 - "graphql"
-
"WE'RE HIRING!!"
Skills Required:
BEFORE: HTML, CSS, JS, jQuery
NOW: REACT/VUE/ANGULAR, NODE, CI/CD PIPELINE, DOCKER, GRAPHQL, JOHN CENA12 -
So, you start with a PHP website.
Nah, no hating on PHP here, this is not about language design or performance or strict type systems...
This is about architecture.
No backend web framework, just "plain PHP".
Well, I can deal with that. As long as there is some consistency, I wouldn't even mind maintaining a PHP4 site with Y2K-era HTML4 and zero Javascript.
That sounds like fucking paradise to me right now. 😍
But no, of course it was updated to PHP7, using Laravel, and a main.js file was created. GREAT.... right? Yes. Sure. Totally cool. Gotta stay with the times. But there's still remnants of that ancient framework-less website underneath. So we enter an era of Laravel + Blade templates, with a little sprinkle of raw imported PHP files here and there.
Fine. Ancient PHP + Laravel + Blade + main.js + bootstrap.css. Whatever. I can still handle this. 🤨
But then the Frontend hipsters swoosh back their shawls, sip from their caramel lattes, and start whining: "We want React! We want SPA! No more BootstrapCSS, we're going to launch our own suite of SASS styles! IT'S BETTER".
OK, so we create REST endpoints, and the little monkeys who spend their time animating spinners to cover up all the XHR fuckups are satisfied. But they only care about the top most visited pages, so we ALSO need to keep our Blade templated HTML. We now have about 200 SPA/REST routes, and about 350 classic PHP/Blade pages.
So we enter the Era of Ancient PHP + Laravel + Blade + main.js + bootstrap.css + hipster.sass + REST + React + SPA 😑
Now the Backend grizzlies wake from their hibernation, growling: We have nearly 25 million lines of PHP! Monoliths are evil! Did you know Netflix uses microservices? If we break everything into tiny chunks of code, all our problems will be solved! Let's use DDD! Let's use messaging pipelines! Let's use caching! Let's use big data! Let's use search indexes!... Good right? Sure. Whatever.
OK, so we enter the Era of Ancient PHP + Laravel + Blade + main.js + bootstrap.css + hipster.sass + REST + React + SPA + Redis + RabbitMQ + Cassandra + Elastic 😫
Our monolith starts pooping out little microservices. Some polished pieces turn into pretty little gems... but the obese monolith keeps swelling as well, while simultaneously pooping out more and more little ugly turds at an ever faster rate.
Management rushes in: "Forget about frontend and microservices! We need a desktop app! We need mobile apps! I read in a magazine that the era of the web is over!"
OK, so we enter the Era of Ancient PHP + Laravel + Blade + main.js + bootstrap.css + hipster.sass + REST + GraphQL + React + SPA + Redis + RabbitMQ + Google pub/sub + Neo4J + Cassandra + Elastic + UWP + Android + iOS 😠
"Do you have a monolith or microservices" -- "Yes"
"Which database do you use" -- "Yes"
"Which API standard do you follow" -- "Yes"
"Do you use a CI/building service?" -- "Yes, 3"
"Which Laravel version do you use?" -- "Nine" -- "What, Laravel 9, that isn't even out yet?" -- "No, nine different versions, depends on the services"
"Besides PHP, do you use any Python, Ruby, NodeJS, C#, Golang, or Java?" -- "Not OR, AND. So that's a yes. And bash. Oh and Perl. Oh... and a bit of LUA I think?"
2% of pages are still served by raw, framework-less PHP.35 -
"Don't deploy on Friday" is a public admittance that your company either has no CI/CD pipeline, or that all your devs are retarded rhesus monkeys who only wipe their ass if the product manager wrote it as a spec.
If the saying was: "Don't port your whole API to GraphQL on a Friday", or "Don't switch from MySQL to Postgres on a Friday", I would agree.
But you should be able to do simple deploys all the time.
I deployed on Christmas & New Year's eve. I've deployed code while high on LSD, drunk-peeing 2 liters of beer against a tree after a party. I've deployed code from the hospital while my foot was being stitched up. On average, we deploy our main codebase about 194 times a week.
If you can't trust your deploys, maybe instead of posting stupid memes about not deploying on Fridays, you should fix your testing & QA procedures.55 -
You know who sucks at developing APIs?
Facebook.
I mean, how are so high paid guys with so great ideas manage to come up with apis THAT shitty?
Let's have a look. They took MVC and invented flux. It was so complicated that there were so many overhyped articles that stated "Flux is just X", "Flux is just Y", and exactly when Redux comes to the stage, flux is forgotten. Nobody uses it anymore.
They took declarative cursors and created Relay, but again, Apollo GraphQL comes and relay just goes away. When i tried just to get started with relay, it seemed so complicated that i just closed the tab. I mean, i get the idea, it's simple yet brilliant, but the api...
Immutable.js. Shitload of fuck. Explain WHY should i mess with shit like getIn(path: Iterable<string | number>): any and class List<T> { push(value: T): this }? Clojurescript offers Om, the React wrapper that works about three times faster! How is it even possible? Clojure's immutable data structures! They're even opensourced as standalone library, Mori js, and api is great! Just use it! Why reinvent the wheel?
It seems like when i just need to develop a simple react app, i should configure webpack (huge fuckload of work by itself) to get hot reload, modern es and jsx to work, then add redux, redux-saga, redux-thunk, react-redux and immutable.js, and if i just want my simple component to communicate with state, i need to define a component, a container, fucking mapStateToProps and mapDispatchToProps, and that's all just for "hello world" to pop out. And make sure you didn't forget to type that this.handler = this.handler.bind(this) for every handler function. Or use ev closure fucked up hack that requires just a bit more webpack tweaks. We haven't even started to communicate to the server! Fuck!
I bet there is savage ass overengineer sitting there at facebook, and he of course knows everything about how good api should look, and he also has huge ass ego and he just allowed to ban everything that he doesn't like. And he just bans everything with good simple api because it "isn't flexible enough".
"React is heavier than preact because we offer isomorphic multiple rendering targets", oh, how hard want i to slap your face, you fuckface. You know what i offered your mom and she agreed?
They even created create-react-app, but state management is still up to you. And react-boierplate is just too complicated.
When i need web app, i type "lein new re-frame", then "lein dev", and boom, live reload server started. No config. Every action is just (dispatch) away, works from any component. State subscription? (subscribe). Isolated side-effects? (reg-fx). Organize files as you want. File size? Around 30k, maybe 60 if you use some clojure libs.
If you don't care about massive market support, just use hyperapp. It's way simpler.
Dear developers, PLEASE, don't forget about api. Take it serious, it's very important. You may even design api first, and only then implement the actual logic. That's even better.
And facebook, sincerelly,
Fuck you.17 -
Always tell junior devs the same.
You'r not going to become the senior dev or architect you have in your grand vision by sitting around this company fulfilling mundane tickets.
Start thinking through new ideas, possibilities, software that you think could really help a specific niche Or pick a model that already exists. The ideas prior existence doesn't matter but having a new idea that has potential has always inspired me to keep pursuing it.
Break out lucid charts, learn how to map out your domain objects and their relationships. Build out a service map of how you want things to work together. You dont have to know how context boundaries or demilitarized zones work or any that technical jargon. At the end of the day those concepts <should> develop organically and then the jargon will come to you like "oh thats the term for this". Some people learn better from knowing and then implementing. I usually come to it organically then learn about it later. Thats the point of this though. Read up on it, understand enough to map it out and then start building them out.
Use a language you want to be proficient in but are not. Use a framework you want to understand but do not. If theres an auth protocol in high demand that meets your needs but you do not understand, run with it. You'r proficient with mysql; mongo would also be a good fit for the business needs but you've never used it. Perfect, use mongo then.
Find avenues of improvement down the line. Maybe the simple records resource server would be a good candidate for GraphQL. Pull in a pub/sub to increase service communication/aggregation, learn websockets to maintain a vital client interface. If you dont know what the fuck im talking about, perfect! Jump in there. Start small, build up, tinker.
You'll meet soul sucking blockers all along the way and thats the biggest thing that separates seniors from juniors is having worked through these issues before, time and time again. Embrace failure, embrace change, maintain initiative because you can be another miserable dev that keeps the cogs turning making a decent 50k salary or you can be a positive catalysis.16 -
Never gonna happen:
* Port our API to graphql. Or even make it just vaguely rest-compliant. Or even just vaguely consistent.
* Migrate from mysql to postgres. Or any sane database.
* Switch codebase from PHP to... well, anything else.
* Teach coworkers to not commit passwords, API keys, etc.
* Teach coworkers to write serious commit messages instead of emoji spam
* Get a silent work environment.
* Get my office to serve better snacks than fermented quinoa spinach bars and raw goat milk kale smoothies
* Find an open source IDE with good framework magic support. Jetbrains, I'll give you my left testicle if you join the light side of the force.
* Buy 2x3 equally sized displays. I'm using 6, but they're various sizes/resolutions.
* Master Rust.
* Finish building my house. I completely replaced the roof, but still have to dig out a cellar (to hide my dead coworkers).
* Repair/replace the foundation of my house (I think Rust is easier)
* Get slim and muscular.
Realistically:
* Get a comfortable salary increase, focus more on platform infrastructure, data design, coaching
* Get fat(ter). Eating, sitting, gaming, coding and sleeping are my hobbies after all.
* Save up for the inevitable mental breakdown-induced retirement.14 -
Your resume:
Git
SSL
Vue
Angular
React
Node
Spring boot
MySQL
MongoDb
HTML
CSS
Java
Javascript
Bootstrap
Cassandra
Hive
Hadoop
Block chain
GraphQL
Kubernetics
Jenkins
Azure
GCP
Interviewer:
Sorry, we need someone who knows AWS8 -
On the job 😊. Told them I could code in the interview... and they believed me.
Now I'm our Director of Technology, and spend at least 8 hours a day building everything from GraphQL APIs to Electron apps. It's been an awesome journey!2 -
Simple but tasty dish.
It’s just scrambled eggs, Indian style.
Oh btw did I say? This is the first dish that I learnt and my favourite goto if I get stuck with golang And graphql.
Guys.
Please do try this combination.
Go + GraphQL + Neo4j9 -
When can we expect to have sex robots that can also be used for domestic chores? I don't want to invest in a robot that only gets occasional use.
And a Roomba isn't very erotic.
If anyone is working on this, GraphQL API will be handy. I'm going to be doing a lot of things with it that you can't even start to imagine so needs to be fully configurable.
Can use Raspberry Pi...I don't need it to be too bright.25 -
I seriously do not understand the rants against Windows.
I love Windows 10 (got as free upgrade from MS), and have no issues with MacOS or Linux OS. I use them as well but do all serious work on Windows.
All my life, I have worked on business / commercial side and picked up Web development in last couple of years. I started using computers on DOS in 1992, and shifted to Windows 3.0 in 1995. There was no Mac or MacOS back then.
For serious work, I purchased a old Dell Precision M4700 workstation grade laptop with quad-core i7, at throwaway price, got 32GB RAM, 2.4TB (1x2 TB + 400gb) of SSD on super sale online, and installed it myself. It easily supports dual 4k monitors.
Git-bash on windows allows all the necessary linux command line on windows. Though not tried, Windows 10 allows embedded Ubunutu with linux terminal. Web development tools like - VSCode, git, github / bitbucket clients, NVM/Node, React / Redux / Webpack / Gatsby / Jest, REST clients, GraphQL client and server, Graph Server, Chrome PWA / Chrome Dev Tools, http/Websocket/WebRTC interception, Google Firebase SDKs, AWS sdks, cloud utilities, CI/CD tools work flawlessly. Windows even has its own package manager for applications.31 -
The situation right now:
Our client: full of legacy desktop solutions that always ran inside a VPN, but wanting to modernize the system and migrate to be hosted in the cloud.
Our first project with them: Frontend built with Angular, backend in a serverless model, all with GraphQL and heavily tested to assure quality. The system is mostly an internal software for management, but the backed may receive data from an App.
The problem: all management users have weak passwords (like "12345", "password", or their first name).
The solution: restrict our system to be accessible only inside the VPN
The new problem: how the mobile app will send data to our backend?
The new solution: Let's duplicate the backend, one public and the other private. The public one will accept only a few GraphQL operations.
------
This could be avoided if the passwords weren't so easily deductible14 -
Such amusement.
Was almost about to throw my keyboard at my monitor, as I could not find the reason behind why the GraphQL server wasn't returning the clientType field in the response.
Only to find out that I never asked for that field in the request 😑5 -
Don't you love it when you take a look at a company frontend React code and GraphQL queries and they say you are hacking them? 🤔🤦🏻♂🤣12
-
The GitHub graphql API is pretty neat, mostly because it's a great example of a product where graphql has advantages over REST. As a code reviewer for repos with hundreds of simultaneous PRs, I use it to filter through branches for stuff that needs my attention the most.
NewRelic's NRQL API is also quite nice, as it provides an unusual but very direct interface into the underlying application metrics.
I'm also a big fan of launchlibrary, purely because I love spaceflight, and their API is an extremely rich and actively maintained resource. This makes it a great data source for playing around with plotting & statistics libraries — when I'm learning new languages or tools, I prefer to make something "real" rather than following a tutorial, and I often use launchlibrary as a fun and useful data backend. -
!rant I’ve been with the same company for 6 years, but the past few years things have been continually declining. Nothing has been awful, I just feel like there is very little room for promotion, or even worse, knowledge gains (we do a lot of win forms, c# mvc, vb6, sql stored procs). I’ve been so desperate to learn “new stuff” that I’ve been picking up contract work where I can find it (for nights and weekend projects). I’m excited to say that the company I’ve been doing most of my contract work with has offered me a full time remote position! It’s a 30% increase in pay, all new tech (mostly React Native, ReactJS, GraphQL, Nodejs, python, and integration with existing .Net applications)!
Feel honored DevRant, I’m telling all of you before I even share the news with my family (with the exception of my wife)!1 -
My middle company urged to try to outsource the engineering department.
So today I met with a "senior engineering manager" to explain to him our infra.
He doesn't know what AAC (architecture as code), terraform, k8 and graphql mean... And that's the easy part!
3 hours after... He only said: "I don't think we have the skill needed to maintain this".
Next week, we should dive in the micro-services...It's going to be hilarious. Well for me, he's fucked.7 -
Fucking hate my job 😡
I joined as nodejs dev at a mnc 3months ago involved in banking software in which i dont have any domain knowledge.. first 10 days I was told to go through fucking udemy nodejs and graphql tutorial (wtf) which i already have experience with before joining.. after that my reporting manager gives me task to resolve fields and gave me shitty jira story link to read.. that shit story link had no explanation about the fields and what the database it is, then she says to use some shitty sdk which is built internally by shiity devloper which had no documentation and have to follow other module which was again written by that sr. Dev... They hav fucked up the graphql and nodejs and entire stack and also till date no one has ever given any explanation about the domain and the fields and database schema.. this manager refuses to share knowledge about the domain now how the fuck i resolve the graphql schema which was again written by non technical b.a.. all they have used is latest technology in a shitty way with no standards to to follow .. no dataloading no caching no batching.. use shitty sdk which does not give access to dbconn and fucking tightly coupling expressjs which when i start consumes crazy 400Mb of memory .. these fucking seniors devs + the fucking b.a having 12+. Yrs exp each have fucked the entire codebase... Each day killing my passion for app development.. fuckkk ... Dunno what to do now5 -
Fucking Square Enix Website is just a huge pile of shit. NOTHING WORKS!
Wanna change your password? Nah sorry an error occured.
Wanna change your username? Nah sorry I'll just show you a loading symbol forever.
Wanna add a game to your collection? Nah sorry the "add" button is on fucking holiday and doesn't do anything.
Wanna change your avatar? Nah sorry I'll just redirect you and don't do anything.
Most amazing part is where you log in, then get redirected to the home page but it still shows the "Log in" button. Then you click on that "Log In" button and wosh! Home page reloads and tada! You're logged in!
Seriously who let this code into production? Also I know that you're using GraphQL now, due to an error message. Thank you!
Fucking bullshit...6 -
I see the industry evolving into dna-mutilated JS hipster virgins who use neuronal networks for even the simplest tasks an jerk off on MongoDB queries during their breaks while thinking of GraphQL queries.
Naughty.2 -
Am i the only one who doesnt see how graphql is useful? Yeah you can cut back on data transfer and let the server do the parsing but like, you can do the same if you spend 3 minutes properly designing the backend?6
-
That joy feeling when you are finally rewriting the backend and frontend with GraphQL instead using the fuckin old undocumented REST API who was written by fuckin amateur ex-coworker.7
-
In the mix for today: 5 devs testing MS Teams collaborative drawing for a GaphQL API project structure, with Halloween and coronavirus in mind
-
So here's is the thing.
For some weird reason I decided to work at a VC funded startup. For 15k year,(I live in a really poor country).
So, let me describe the hell I'm in now, and if for some good grace you happen to be hiring, please consider saving me from the horror that's ahead.
Company got funded 5 months ago, main owners are, an economist and a civil engineer with no programming habilities whatsoever.
They took 1 month to assemble "a killer team", with no hiring expertise they handpicked a CTO that came in 1 month later and took a month of vacation in his first month of work.
He didn't do any specification of the system that needs to be built.
The 2 naive owners hired the rest of this "killer team".
The team is good, but have no appreciation of planning.
They've built and rebuilt the backend system twice, once in graphql and the second with plain http (is not real rest, just a http api), in front of, guess what a mongo database.
This mongo DB is not only one, but 7, because we have 7 microservices, and each has its own database.
After some time, they decided to fire their CTO, and hire one more programmer(that's me), because the CTO wasn't doing anything.
The app has 3 parts, the app per se, a business version, and a help desk, guess what the helpdesk just appeared last week on the radar.
Long story short, we have one month to deliver what couldn't be built in 5.
When I decided to work for these people, I did not imagine the kind of clusterfuck that I was getting into.
It took me 1 month to realize the whole situation, now, I really would like to see some help from the deities of any religion, not for the project, that project is doomed.
It's how I'll pay the bills after that clusterfuck collapses that worries me.
Now in the startup no one is talking about how stupid the whole situation is. Or how far back we are. And at this point there's very little that could be done about it, I have a feeling that it could still be accomplished, but it's fading day after day.
I will do my best to live the best of this experience, and do as the musicians in the Titanic and keep playing the music even after knowing the Titanic is sinking.5 -
ProfaneDB is a database to store Protobuf objects, working on top of gRPC for cross compatibility.
May evolve anywhere towards a "Serverless" kind of solution; a GraphQL to Protobuf interface; may use SQL as backend...2 -
GraphQL people: REST sucks because it causes unnecessary data fetching and extra requests.
Also GraphQL people: "PicoLooper - A <200 LOC 🤏 ninja-grade 🥷 bulletproof 🔫 solution for the n+1 request problem 🙅 made with love ❤️" -
What a great day already
* Start learning grahpql
* yay it seems easy
* not 2 minutes later get message from professor to write an apology letter for that seminar that I did not attended (inner ultimate rage), and if I don't submit it I won't be allowed for the final semester of my last step of education
* wow claps for your education system and asshole "professors"
* fuck all friends who want to write their apology letter with "excuse".
* AT LEAST GIVE A FUCKING EXCUSE TO WRITE, YOU MORONS
* what graphql? oh yes couldn't continue
* checks messages on WhatsApp *
* Hey could you write me an email regarding a refund I need.
* ¯\_ツ_/¯ ⤜(ʘ_ʘ)⤏
All of this fucking shit storm and still I haven't been able to land upon a topic for the project
Oh wait, but you have to do your project in an industry, and IT HAS TO BE A PROJECT
Ah we don't care if industry allows a fresh intern to do a live project or gives intern resource and company space and invest time and effort in him/her. no we don't.
*WE WANT INDUSTRY PROJECT FROM YOU*1 -
CEO: Lets shift our REST app to graphql.
Me: what? why?
CEO: I saw this amazing video on youtube about it.
Me: But the app is working fine.
CEO: So?
Me: ...so we should stay on the current arch.
Few hours later...
Me: Implementing graphql2 -
If I ever have to write a RESTful API form scratch again I'm gonna throw myself out of the window.7
-
I just learned the concept of this thing called REST API and now here's GraphQL showing up on me face. Mother fucking web development hell. BRB. KMS4
-
I'm currently between jobs and have a few rants about my previous job (naturally). In retrospect, it's somewhat therapeutic to range about the sheer brainfuckery that has taken place. Enjoy!
First, let me set the scene: legacy B2B web app made with LEMP stack and sencha ext.js 3 + 4 (don't ask) and a lot of madness. Let's call that app "Alpha".
Alpha is a self made CMS build for typical ERP stuff. Yes, a self made CMS: entities are containers, containers have types and fields and values. Like so many legacy PHP apps, it does not have a dedicated FE: the HTML is rendered on the server and then spewed out to the browser.
Easy right? Coding like it's 1999! But there was a twist: Because everything is basically a container, the HTML-templates are saved in the DB. Along with the nessary JS and the CSS. And the translation variables. Why? Because fuck you! That's why. Who needs a git history anyways.
For some reason, Alpha was kinda slow.
There was also an editor, that allowed you to modify templates (web, mail, pdf) on the fly in prod. Because templates contain repeating data (header/footer), one template could contain additional templates. Much confusion. You could change templates via migration (slow, boring) or just ctrl-c/ctrl-v that sucker (fast, much excitement).
Did I mention Alpha was slow?
On with the rant: e-mails! How do they work? Noone knows. How to send mails asynchronous in PHP? Witchcraft is the only possible answer to that riddle. Here is your enterprise™ solution:
1. create mail
2. insert mail into DB
3. WAIT UP TO 59 SECONDS FOR A FUCKING CRON TO SEND MAIL
Why? "Because that way, we can resend mails in case the network is down :)"
Same procedure for the SOAP-API (db-queue + cron). You read that right: all requests to various other systems are processed once a minute.
Alpha slow.
Alpha was only one of several systems. Imagine a bunch of monolithic php apps, interconnected via SOAP, REST and GraphQL like a godamn intergalactic orgy. Image having to debug that cluster fuck.
Let's say there is a bad request. These things happen. No biggie. Remember the db-queue? Let's try to send the bad request a second time! And a third time! Still no luck? How odd. Let's create a specific file in a specific directory: a LOCK-file. Now, "the db-queue is on hold and no request gets processed :)"
Golly gee thanks Alpha.
Anyhow, did you know that MySQL has a join limit of 61 tables?3 -
So I have a question regarding what I should learn next. I am going to my 3rd year in college and you can say that I am sort of baby MERN stack developer. Baby because I don't have a lot of production/real world experience. Now I need to decide whether I want to continue to work with JS in web dev. Or should I go to some other language for web dev like . NET or python. Or should I start learning GraphQL, or Machine learning. I am quite interested in blockchain and devops also, but I need to make a decision and please give me advice as to what you think will help me in the future.
I know I am all over the place but that is literally my brain since last few weeks.
Thanks in advance, I'll do a ++ as a form of my thanks.14 -
Spent the day refactoring a REST app into graphQL, that feeling when all tests are green and everything is committed and merged 😧🤓3
-
About 4-5 hours ago I wanted to make simple websocket to get input from textarea and parse it on server and somehow got myself into developing in asyncio -> aiohttp -> graphql-core -> graphql-ws -> aioredis
and svelte-> typescript
I still didn’t make the stuff I wanted but I’m very close on backend at least.
I have some frontend part somewhere in my old prototypes so it will be faster if I figure out svelte.
Still don’t understand what the fuck just happened.
Maybe it’s because I wanted try those frameworks for a long time.
All ‘simple’ examples I found have around 20-30 files for backend and same amount for frontend so more then 50 files to get this shit working.
They’re called oh irony “simple chat”.
Now I see why no one fucking understands this shit.
I’m trying to cut mine to 5 files.
I thought developers are lazy bastards who don’t like write code.
But now after this they’re all looking like adhd coders.
Looks like Monday won’t be my best day.9 -
After two weeks of isolation, talking to my GraphQL endpoint almost feels like talking to a human.1
-
I'm working on a Web API for retrieving informarion of some sort (can't speak as it is a work in progress😝).
Before starting to work on this project all the experience I had was Desktop (C#, VB) and some SQL but now I'm learning so much more: REST, Asp.net core, nosql, GraphQL and more.
Even if I can't finish this project, still what I'm learning is even more valuable2 -
Trying to explain to my remote colleague the ABSOLUTE SODDING MESS he's left behind because he's decided to bypass Apollo/GraphQL and interface directly with the NoSQL db.1
-
GraphQL- It makes API development to next level.
MonoRepo - Still I'm wondering how people are maintaining. :) -
Have you worked with GraphQL? Saw it for the first time and it looks like a pretty good tool for working with APIs, to me. I am excited to read your opinions about GraphQL.23
-
This morning me and my colleague had huge debate about using GraphQL or REST. While I was in total favour of GraphQL, that guy was more on REST side because he read some random articles on dev.to and medium and was highly motivated to use REST instead of GraphQL.
The problem is, some people write anything on blogging websites without even doing a proper research.
Since, I have worked on GraphQL, I knew it's pros and cons very clearly and what are the things that can be done to solve them.
The guys said that we can't do native caching in GraphQL at which the lava from my head just got burst out.
I showed him the official GraphQL docs where it was clearly mentioned that we can do caching in GraphQL.
Poor guy couldn't say anything after that.
P.s: We are still going to use old school REST APIs but I am happy that I could prove my point. I'll use GraphQL in my side projects anyway, loss for him if he's not exploring something new.7 -
Finally made my node production server stable enough that I could focus on writing tests*. I start by setting up docker, mocking cognito, preparing the database and everything. Reading up on Node test suites and following a short tut to set up my first unit test. Didn't go smoothly, but it's local and there are no deadlines so who cares. 4 days later, first assert.equal(1+1, 2) passes and I'm happy.
I start writing all sorts of tests, installing everything required into "devDependancies," and getting the joy of having some tests pass on first try with all asserts set up, feels good!
I decide to make a small update to production, so I add a test, run and see it fail, implement the feature, re-run and, it passes!
I push the feature to develop, test it, and it works as intended. Merge that to master and subsequently to one of my ec2 production servers**, and lo and behold, production server is on a bootloop claiming it "Cannot find module `graphql`". But how? I didn't change any production dependencies, and my package lock json is committed so wth?
I google the issue, but can't find anything relevant. The only thing that I could guess was that some dependencies (including graphql) were referenced*** in both, prod and dev, and were omitted when installed on a prod NODE_ENV, but googling that specific issue yielded no results, and I would have thought npm would be clever enough to see that and would always install those dependencies (spoiler: it didn't for me).
With reduced production capacity (having one server down) I decided to npm uninstall all dev dependencies anyway and see what happens. Aaaaand it works.....
So now I have a working production server, but broken local tests, and I'm not sure why npm is behaving like this...
* Yes I see the irony.
** No staging because $$$, also this is a personal project.
*** I am not directly referencing the same thing twice, it's probably a subdependency somewhere.2 -
Does anyone have an alternative web framework mostly for an API? Much appreciated if Graphql out of the box.
One "pillar" of Rails is that it's done to optimize programmer happiness. My experience with Rails turned out to be true in that sense.
I was wondering if there's an alternative that could emulate that experience.5 -
GraphQL and RestAPI are so different and GraphQL is too easy.
It took me 2 hours to figure out everything about githibAPI in REST. 😕😑😑😑😑😑5 -
is there a opensource tool to collect all the existing databases in a big company to one platform/cockpit? In order to make them queryble via graphQL? aka. [Company.api]4
-
So, after having my mental breakdown with the 500k LoC Zend Frameshit PHFuck 5.5 with 0 test project, for a whole year; and after moving to a better job, I now inherited a React/Node/GraphQL project with a shitty architecture. It's so shit technical debt can almost be payed with actual cash... or flesh, ass-for-arch.
However, line test coverage is over 90%, so I guess it is an improvement.1 -
I am a fresher in web development. I have already learnt to use nodejs, react, angular, vanilla js and made many projects. Majority of the work I feel is just CRUD based, sure there are some exciting things but they are only of a small percentage.
All that innovation HAPPENING is just glorified way of making a CRUD APP ONLY.
Oh mvc worked great on server side let's bring it to client side
OH mvc is such a mess, who thought about doing this.
Oh react redux is so revolutionary let's remake our app using it,,
Oh es6 fuck yeah, Babel, webpack sure, now my crud app is super performant.
Oh graphql, motherfucking cutting edge CRUD APP......
I need to know what's next, is there any breaking of this cycle11 -
Rails, React, React-Native, Docker, Kubernetes, Openstack, Jenkins, AWS, Microservices, Realm, MongoDB, PostgresQL, GraphQL (list goes on...), and I'm not even done yet.
6 months was spent learning all of the above because I found a Rails-only monolith on Heroku unsettling. My first batch of containers was just deployed and I couldn't be happier. Love my job.3 -
As silly as it sounds, but migrating our company's web application from Ember/JSON API --> React/GraphQL would be a pretty solid achievement.
We're almost to read-only feature parity at the moment with a single developers side time as a proof of concept. -
I was studying a lot the last year, i learned a lot about Machine Learning/Deep Learning, Data Gathering, Data Analysis, ETL, Model Architecture Design, Training, Fine Tuning, Backend Development, DataBases, API Development, ORMs, Rest, GraphQL, OAuth, CI/CD, Docker, Deployment to Production environments like Heroku, Git and more stuff i dont remember while writing this. I built and keep adding stuff to my Github Portafolio.
Im not able to get a job. I started looking for jobs as Data Scientists, no response never. I take a look at freelancer sites, nothing seems to fit my skills. And when there is a minimal fit, they always want a Full Stack Web Developer, i dont know Frontend Development, i dont like do it.
Dont know what to do or how to land any job.
My options aeems to be:
1.Learn Frontend Dev and work as Full Stack in underpaying freelance jobs
2.Keep applying to Remote-Only startups, but they still wants people with 3+ years of experience.
i cant work in my city, here are not any company startup hiring no one, we are 30 years in the past here.
What you do in my place?10 -
My ideal dev job, would be a job I can show compassion towards. A team I can be proud of and learn from. And a vibrant workspace with likeminded individuals who just want to improve themselves even if they feel their at their pinnacle.
My current office tries to make use of new technologies, we've embedded docker, vagrant, a few ci systems on an in need basis per team, and a lot of other tools.
My only real qualms are they feel indifferent towards new languages and eco systems ( Node.js, GoLang, etc ). Our web team is still using angular.js 1.x, bower, refuses to look into webpack or a new framework for our front end which is currently being bogged down by angulars dirty checking.
Our automated quality assurance team is forced to use Python for end to end testing, I've written an extensive package to make their lives easier including an entire JavaScript interface for dispatching events and properly interacting with custom DOMs outside of the scope of the official selenium bindings.
Our RESTful services are all using flask and Python, which become increasingly slow with our increase in services. I've pushed for the use of Node or GoLang with a GraphQL interface but I'm shot down consistently by our principle engineers who believe everything and anything must be written in Python.
I could go on, but tldr; I'm 21 and I have a ton of aspirations for web development. I'd like to believe I'm well rounded for my age, especially without any formal education. I'd love to be surrounded by individuals who want the same, to learn and architect the greatest platforms and services possible.1 -
For a new microservice we were designing, I recently had a design discussion with a team member on creating REST endpoints for a new entity. This discussion went on for almost 3 hours, most of the time was spent on why to have two endpoints for getting this resource, one is a POST using a graphQL-like query and another one is a GET using unique ID. I said, the client-side use case is different, one is a dashboard where search results need to be shown based on multiple fields and the unique ID won't be available there because it is a system generated value, second one will be used when the unique ID is present in the client as a result of previous search result. Their responses will be similar, first returns a list of entities, second returns a single entity of the same structure.
Then came the next argument: if both APIs are returning same response, why do we need two different requests ?
It was like saying, because 5+6=11, any sum of two numbers resulting in 11 should always use 5 & 6.
Are people so frustrated of working remotely all the time that they come with such weird arguments ?1 -
I'm looking into GraphQL and so far so good, but I am finding it hard to implement business rules, for example:
1. Receive request with auth token
2. Know who the user is by extractin userId from token
3. fetch data related to that user only.
I was only able to make it allow or deny if there is a token or not lol5 -
Introducing Jungla.
Jungla is an alternative to GraphQL with some unique features.
The goal of Jungla is to have the freedom to structure your results the way you truely want, on the fly.
Rather than defining your schemas before the requests like in GraphQL... Jungla can be entirely defined in your request, or implemented server side for quicker request times.
https://github.com/crazywolf132/...
Come and take a look...10 -
I feel there aren't enough tutorials on "best practices" when it comes to combining server/client tooling in a monorepo.
Having done so this weekend, the tasks involved were:
* using graphql w/ express to serve requests and expose a "graphiql" ide instance
* differentiating build steps in prod vs. dev
* applying middleware in prod vs. dev
* working with a single heroku dyno
Still missing:
* hot reloading
* my general sense of direction -
i still haven't picked up graphql, might spend sometime next weekend seeing what it has to offer. anyone have any advice or stories?8
-
Today is bank holiday in the UK. Fucking boss slacked me to say he needs graphql n mongodb wired up by tomorrow. I almost tell him to fuck off, today is not work, bitch1
-
Full stack devs, who use both: When to you choose GraphQL over REST and vice versa? What has taught you the reasons why?
Just trying to avoid the gotchas on a critical project coming up.4 -
BoardgameQL -- An engine to rapidly build a graphQL server for games like words with friends, usable like flask1
-
Why Dart was designed with idiocy:
1) naming conventions are idiotic
Most other languages are smart enough to not throw errors when the variable name matches its type. And lots of others, for any lexemme - only 1 naming kind is allowed.
Fine. Oh wait, there's that thing called existing databases and GraphQL & other APIs, should they all adapt to this? No, because 2) is the bonus
2) String keys in objects. Unless it's a class with boilerplate, you write them as strings and access them as strings.
So here's the solution when you want to integrate Dart with existing services: write a lot of JSONSerializable decorators to fit with dart's pissy naming requirements.3 -
So I know React & Vue, webpack, Node/Express, ES2018, GraphQL, all the "fancy stuff" but I'd also like to get some skills creating/customizing WP templates.
Any recommendations on how to get started?
(other than "eww WordPress, pls kill yourself")2 -
GraphQL or REST?
I'm not really worried about boilerplate (my research reveals it's roughly the same), I currently have a (very incomplete) REST interface, but that was just for testing.
Also, the API has no real usage yet (I only use it for submissions) and it literally exists for the sake of having an API (so I don't need to write it later).11 -
Do you think that Graphql is the future?
Should i invest time in it? Or it's just a hype like anything else?9 -
It's the 5th day of my holiday, circa 10.20 AM. So far I've spent around 30h programming, and learned React (already having experience with the other 2 major ME*N stacks I decided it was time to give it a go), made a small 2D platformer with Unity and realised I really like writing unit tests. Maybe next I refactor the app I just made to use GraphQL and TypeScript next, since I'm in the mood of trying something new.
Funny how my significant other thought being on holiday actually would mean a break from programming - no, it means more time to spend learning and trying things you don't have the time or energy to after a working day of Vue/C#!
(To clarify, I would not spend this much time programming on my holiday, if my better half wasn't away from home for this week - won't probably spend nearly as much time on it for the remaining 4 weeks...)2 -
You're kidding. You know how React, GraphQl, and Jest are made by facebook. You would think that Jest then would be framework of choice for mocking gql queries and responses for a React app. And you would be wrong. You "can, but-", depending on your implementation - ours being based on official sources - not without contorting and duplicating everything related to the query implementation at which you are barely even testing the app itself. We're using named imports from .gql files, for those familiar.
Don't you hate it when it turns out the guy going "nah tests were too hard, we didn't bother" was right.3 -
Although I don't like facebook from various points of views (policies, etc) (still I use it with disabled platform and many other settings) I like most of their developer oriented projects. Graphql being one of them.
Likewise talking about microsoft I have grown to love vscode and language server protocol (which I find too awesome!!)
What's your rant about similar companies? -
Today, Someone I am working for asked me to port a REST API to GraphQL.
The REST API response is a JSON containing only 3 fields.
Does it makes sense to even consider porting this to GraphQL?
To be clear, The scope of the project was finished as in, All the features and whatever were already written and there was nothing else to be added to the API.4 -
what are some of your thoughs on GraphQL?. I Recently made a side project using it and it was not bad. I just think that GraphQL pays off if you're going to build something highly connected and your queries are very unpredictable (like a social network). Developing new features/endpoints is a bit slower than a rest api and that is a deal breaker for me. But it's ok6
-
A guy on YouTube posted in a GraphQL tutorial about his CSS issue. He asked about why a certain background for a website that he is creating only looks good on a phone but not on his desktop. I asked him to put the code on either jsfiddle or codepen but he still put the code in the comments, only the CSS part. I kept telling him to place it on those two sites, eventually he did. I looked at the pen and guess what? The picture is a portrait one... He wants to use CSS to make it look good, I don't know how he is gonna achieve that but good luck. I am done with him, stopped commenting.3
-
React app, on mongodb 3.6 and mongoose 5.0.17
Still cant use tje aggregate function without a cursor. Anyhelp ? -
Is GraphQL worth it? It promisses to keep some load away from backend programmers but what about this scenario:
There's a list of items with scroll load/infinite scroll. There can be several filters as well as the Option to change the ordering of the list items.
With "traditional" REST, I'll hit the DB with one request, get the data in the right order to the backend, might itterate over it once to add additional information, cache the result in Redis/Memcache and send it off.
Using GraphQL, the frontend has to load all entries first, sort them in JS (which probably is slow on mobile devices), and then display it. No matter how "expensive" the query is, there's no caching.
Is that about it? Did I get something backwards?3 -
https://apollographql.com/docs/...
Facebook isn't ashamed to presnt us with that dirty trick. Seriously they could have made a proper way to mock loading states. -
Finally got my multi-page dialog with stepper to have validation on every field based on a schema in a way that doesn’t totally mess up styling and that still collects information from fields from both pages to send the Graphql mutation.
So happy I could cry. -
Then from the darkness a moment of brilliance striked through lighting the way to greatness!
https://www.chimpjs.com/ -
So they develop this app. That uses our front end component library. That queries a GraphQL layer developed as NPM package. That uses a data service abstraction NPM package. That uses another NPM package mapper library. That queries an old REST API returning XML.
It takes days to make a newly added XML node in the bottom-most layer available in the app, requiring changes to 4 repositories and 3 NPM releases.
Refactoring is dead, because 1 change will affect all layers. And the worst part is: theres only 1 app using these packages, so no case for re-use. Overzealous separation of concerns I guess?2 -
I finally took a day to learn GraphQL
Man... It's fucking amazing!
Any thoughts about it? Production experience? -
I've started looking into stuffs like GraphQL and Linked Data (though I've used Micro Data before on websites) today and while fiddling with stuff, I found this handy tool:
https://search.google.com/structure...
I'm trying to create JSON-LD data and it's really helpful to have something validate my test data 🙂 -
This week I started developing my first serious backend for a customer using node and graph ql, and I'm here as a Frontend Developer. But I have to say I like it. Using Vue.js with axios on Frontend side. Everything feels so intuitiv during coding.1
-
Today i present GraphQL to my colleagues.
Tell me your experiences with "querying your REST endpoints!2 -
A Retrofit 2 converter library for GraphQL. Now we can simply do graphql queries over rest by writing less lines of code.
Checkout the git repo https://t.co/8cGsD3gM6T and my medium article. https://medium.com/@ramkishorevit/....1 -
Hey, can someone point me to a sample project (if it exists) on the best way(s) to stucture code for Serverless architecture that includes GraphQL and unit testing?
Preferably in NodeJS. I'm more interested in the code structure than anything else. -
just found out about GraphQL this week in some deep R&D sessions. Sooo are we just trying to entirely automate server side now? I mean I've got strapi for API point/click creation with GraphQL installed so I've gotten the entire POC out the door without a line written server side. That seems remarkable and pretty disappointing at the same time.2
-
When AppSync subscription payloads are defined by the initiating mutation instead of what I ASKED for, and filtering only works when the initiating mutation specifically queries for that field in the respond payload that it doesn't even need.
-
The only reason to migrate to AppSync is the fact that a managed Apollo Server is nowhere to be found.
You heard me, Apollo? Come on, even MongoDB got Atlas! -
I starting developing my skills to a pro level from 1 year and half from now. My skillset is focused on Backend Development + Data Science(Specially Deep Learning), some sort of Machine Learning Engineer. I fill my github with personal projects the last 5 months, and im currently working on a very exciting project that involves all of my skills, its about Developing and deploy a Deep Learning Model for Image Deblurring.
I started to look for work two months to now. I applied to dozens of jobs at startups, no response. I changed my strategy a bit, focusing on early stage startups that dont have infinite money for pay all that senior devs, nothing, not even that startups wish to have me in their teams. I even applied to 2 or 3 and claim to do the job for little payment, arguing im not going for money but experience, nothing. I never got a reply back, not an interview, the few that reach back(like 3, from 3 or 4 dozen of startups), was just for say their are not interested on me.
This is frustrating, what i do on my days is just push forward my personal projects without rest. I will be broke in a few months from now if i dont get a job, im still young, i have 21 years, but i dont have economic support from parents anymore(they are already broke). Truly dont know what to do. Currently my brother is helping me with the money, but he will broke in few months as i say.
The worst of all this case is that i feel capable of get things done, i have skills and i trust in myself. This is not about me having doubts about my skills, but about startups that dont care, they are not interested in me, and the other worst thing is that my profile is in high demand, at least on startups, they always seek for backend devs with Machine Learning knowledge. Im nothing for them, i only want to land that first job, but seems to be impossible.
For add to this situation, im from south america, Venezuela, and im only able to get a remote job, because in my country basically has no Tech Industry, just Agencies everywhere underpaying devs, that as extent, dont care about my profile too!!! this is ridiculous, not even that almost dead Agencies that contract devs for very little payment in my country are interested in me! As extra, my economic situation dont allows me to reallocate, i simple cant afford that. planning to do it, but after land some job for a few months. Anyways coronavirus seems to finally set remote work as the default, maybe this is not a huge factor right now.
I try to find job as freelancer, i check the freelancer sites(Freelancer, Guru and so on) every week more or less, but at least from what i see, there is no Backend-Only gigs for Python Devs, They always ask for Fullstack developers, and Machine Learning gigs i dont even mention them.
Maybe im missing something obvious, but feel incredible that someone that has skills is not capable of land even a freelancer job. Maybe im blind, or maybe im asking too much(I feel the latter is not the case). Or maybe im overestimating my self? i think around that time to time, but is not possible, i have knowledge of Rest/GraphQL APIs Development using frameworks like Flask or DJango(But i like Flask more than DJango, i feel awesome with its microframework approach). Familiarized with containerization and Docker. I can mention knowledge about SQL and DBs(PostgreSQL), ORMs(SQLAlchemy), Open Auth, CI/CD, Unit Testing, Git, Soft DevOps Skills, Design Patterns like MVC or MTV, Serverless Environments, Deep Learning Solutions, end to end: Data Gathering, Preprocessing, Data Analysis, Model Architecture Design, Training and Finetunning. Im familiarized with SotA techniques widely used now days, GANs, Transformers, Residual Networks, U-Nets, Sequence Data, Image Data or high Dimensional Data, Data Augmentation, Regularization, Dropout, All kind of loss functions and Non Linear functions. My toolset is based around Python, with Tensorflow as the main framework, supported by other libraries like pandas, numpy and other Data Science oriented utils.
I know lot of stuff, is not that enough for get a Junior Level underpaid job? truly dont get it, what is required for get a job? not even enough for get an interview?
I have some dev friends and everyone seems to be able to land jobs, why im not landing even an interview?
I will keep pushing my Dev career, is that or starve to death. But i will love to read your suggestions! how i can approach this?
i will leave here my relevant social presence:
https://linkedin.com/in/...
https://github.com/ElPapi42
Thanks in advance!11 -
Anyone had much experience with Om.Next? It looks neat. From what I understand their way to tackle state management is very reasonable. Looks like GraphQL but for both client and client/server.
-
I have this love-hate relationship with strong typing.
Right now, the types are shared between:
Postgres <-> DB Data Models <-> GraphQL <-> TypeScript <-> MobX-State-Tree2 -
Started learning/using graphQL for my personal project and it’s really interesting! It solves my major concern of huge json response5
-
A quick question !!
How popular is GRAND stack? GraphQL React Apollo client Neo4j Database.
Is anyone using it?5 -
The moment when you are desperate enough to integrate forceUpdate into production code.
Also I like how apollo-client acts like enterprise grade when they do all the heavy crap in the UI thread.3 -
New guy in the block!. Just started with a new position in a new company too!.
Designated as as Devops Engineer (after my 2 years of experience as one) in a well funded Saas Startup!. Lots to learn. I used to work in Openstack Terraform puppet etc whilst here it's fully AWS. I was expecting this right from the start but woah.
Lambda, dynamodb, cloudformation, ssm, codebuild, codepipeline
Serverless framework, Flask and node mixed apps , Vue (including vuex) js Front end, graphQl api, and rest for between microservices.
Lots of ground to cover and I've not consumed this much topics before. Especially graphQl and Vue js are being a pain for now .
Each Devops engineer is working on a tools to improve the productivity and shorten the release time. Lots of automations in the pipeline!.
I'm not sure this qualifies as a rant but here you go!.2 -
Need Suggestions:
Your web dev noobie here. i was doing php froma php udemy course a few days ago. Recently i created a very basic website that used mysql and php in the backend and deployed on aws ec2 instance.
So as of now i know php, some frontend and basics of how to deploy a website.
looking forward i guess i could deploy more websites with a bigger sql queries and more complex tables. But it feels like i am missing some important concepts . i mean the whole site comprised of 1 php file handling the backend and i html file (=html+js+css)
Can you tell me some of the important things that i could learn by adding to my projects(in context to php)?
I have heard there are a lot of concepts like architectures, frameworks, security handling, api designing/testing , graphql, encryptions, etc that a backend dev should know.
Also Can someone share their exerience with those php frameworks(laravel, codeignitor, symphony, cakephp, yii, etc) ? i haven't read much about them5 -
The community has multiple fixes to 3.0, but it looks like the whole team has been allocated elsewhere in Apollo, this is not the first time.
Good job, Peggy. Keep poaching for community hype and let us down, it will backfire.2 -
Every once a while, I secretly wished AppSync will be equipped with persisted queries and batch queries.
Was I not praying hard enough? -
I don't get the hype about graphQL...it seems to be impossible to query over a structure with a deep of n levels (use it for a topology manager). In order to get the 5th sub-element you really need to specify the entire 5 sub-levels in your query...Why? Just the fuck why?3
-
how do people write their delete mutation resolvers? (like in a graceful way, i feel there should be more than just telling the datastore to yeet the record and not tell the client about more info)1
-
Mocha or Tape (both with supertest)? For Backend testing. Api, graphql, that shit.
What would you prefer and why?4 -
Elixir, Phoenix, PostgreSQL, GraphQL, ReactJS and Redux.
Anything missing on this stack to be perfect? 🤔6 -
hey folks,
need opinion about prisma grahql.
is it mature tech for ecommerce platform?
documentation and online help?1