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 - "web engine"
-
As a developer, sometimes you hammer away on some useless solo side project for a few weeks. Maybe a small game, a web interface for your home-built storage server, or an app to turn your living room lights on an off.
I often see these posts and graphs here about motivation, about a desire to conceive perfection. You want to create a self-hosted Spotify clone "but better", or you set out to make the best todo app for iOS ever written.
These rants and memes often highlight how you start with this incredible drive, how your code is perfectly clean when you begin. Then it all oscillates between states of panic and surprise, sweat, tears and euphoria, an end in a disillusioned stare at the tangled mess you created, to gather dust forever in some private repository.
Writing a physics engine from scratch was harder than you expected. You needed a lot of ugly code to get your admin panel working in Safari. Some other shiny idea came along, and you decided to bite, even though you feel a burning guilt about the ever growing pile of unfinished failures.
All I want to say is:
No time was lost.
This is how senior developers are born. You strengthen your brain, the calluses on your mind provide you with perseverance to solve problems. Even if (no, *especially* if) you gave up on your project.
Eventually, giving up is good, it's a sign of wisdom an flexibility to focus on the broader domain again.
One of the things I love about failures is how varied they tend to be, how they force you to start seeing overarching patterns.
You don't notice the things you take back from your failures, they slip back sticking to you, undetected.
You get intuitions for strengths and weaknesses in patterns. Whenever you're matching two sparse ordered indexed lists, there's this corner of your brain lighting up on how to do it efficiently. You realize it's not the ORMs which suck, it's the fundamental object-relational impedance mismatch existing in all languages which causes problems, and you feel your fingers tingling whenever you encounter its effects in the future, ready to dive in ever so slightly deeper.
You notice you can suddenly solve completely abstract data problems using the pathfinding logic from your failed game. You realize you can use vector calculations from your physics engine to compare similarities in psychological behavior. You never understood trigonometry in high school, but while building a a deficient robotic Arduino abomination it suddenly started making sense.
You're building intuitions, continuously. These intuitions are grooves which become deeper each time you encounter fundamental patterns. The more variation in environments and topics you expose yourself to, the more permanent these associations become.
Failure is inconsequential, failure even deserves respect, failure builds intuition about patterns. Every single epiphany about similarity in patterns is an incredible victory.
Please, for the love of code...
Start and fail as many projects as you can.30 -
School principal : P / Me : M / Interviewer over Skype : S
P. I recently heard you run a software club in our school.
M. Yes. (started from March)
P. Well, one software community seems that he found you somewhere, and asked me if we can do a quick interview.
M. Sure. What is it?
P. So he will connect to skype.
M. Let's start then...
*A few moments later...*
M. Wwwwhhhhaaaaattttttt?
P. Calm down! What's the problem?
M. How can I have more than 5 years of android development?
S. Ok. Recorded. Next question.
M. (uhhh)
*A few moments later...*
M. What? Why in the heck do I use subversion?........
Yes... Ah... Ummm....
No! Why should i make a gui client for subversion?
*A few moments later...*
S. Do you have hacking experience?
M. Of what? I know hacking is illegal here..
S. Like... Anything!
M. Do YOU have an experience?
S. Yup.
M. What?
S. Google.
M. How?
S. (silence) Ok. Let's move on.
M. (wtf is this guy)
*A few moments later...*
S. Okay. We were about to hire you but you didnt met our job requirements.
M. ......What? What was the job?
S. Web developer Intern
M. I got no questions regarding "web".
S. I know devs should be great at all things.
M. Shut the hell up. What company are you?
S. (says something)
M. (Searches in google) Doesnt come in search results.
S. Where did you searched it? (trembling voice)
M. (Searches in naver, search engine of korea) Nothing. Are you sure you are a company?
S. (ends call)
Hate these fake interviews. And i have no idea how they found my school
I never wrote my school anywhere.12 -
I was 12 years old and it was my first freelance.
I was taking a Web Designer course and my teacher offered me an “opportunity”. He asked me to develop a search engine for a real estate website.
I did it pretty quickly with PHP and MySQL. The amount offered was U$ 20.00 (yeah, I know, it sucks, but it was a good chance to earn experience).
3 months went by, it was the last week of the course and he still hadn’t payed me yet!
End of story: my dad and a couple friends went to the school and had a conversation with him. They said things like: man, you shouldn’t ruin a kid’s dream for twenty dollars. I’m sure he only payed me because he was scared haha7 -
I am trying to understand something for a while. devRant is full of privacy advocates and to be honest, part of it is almost taken by a group of people that call other people random swear words people because they are using a particular product of a company.
I will raise some points and will try to discuss them with other people in comments.
I will stick with Google. Since it looks like it's the most hated one. A company that has built one of the most intelligent infrastructure, the most popular mobile operating system and of course, the best search engine currently available.
The problem everyone sees is the privacy. Google tracks the search history to give users a better experience and show relevant ads. You might not need this "better experience". In case you don't know, you can turn off personalized search any time to make sure Google doesn't track. Same goes with Google Chrome, you can turn off all the data it is sending to servers in settings. You can simply not sign in if you don't anything to be synchronised.
An argument is Google should be opt-in rather than opt-out. But the general users are not tech-savvy. And yes, going to settings and turning on personalised search is a lot of work for a huge amount of people. Trust me, I worked in IT before. If they find other search engine giving them a good experience without changing anything in the settings, they will just simply move to that engine.
What interests me most if how people back DuckDuckGo. First of all, not all parts of DDG is not open source (it's fucking not, you can argue all day). Parts of it is closed because of licensing issues.
That is perfectly fine to privacy community. But it's not when Chrome is closed source for almost the same reason. I mean when you're using DDG, you are supporting a US-based company that has privacy all over its face and using closed source application on their server. Have you not learned anything from history?
You might be wondering about my obsession with Google. It hurts me when I see a giant company whose popular software is open source is bashed like this. Google has made huge contributions to open source communities. Chromium, Android, Kubernetes, Angular, GoLang, TensorFlow etc.
And PRISM, how do you know that DDG is not part of it? it's US-based after all.
I just saw an article that used a video with a title "TNW - Aral Balkan - Free Is A Lie | The Next Web" while asking us to switch to DDG. Ummm....DDG is also free right?
Maybe we should raise concerns with the US gov first rather than Google.60 -
Just before you, my fellow system programmer, scroll past this, let me say this:
🍬 The web is actiually simple. 🍬
Both HTML and CSS is declarative. It's all easy when you understand the concepts, learn how to be idiomatic and quit trying to do that imperative bullshit in languages that aren't imperative.
HTML is simple. You know the boilerplate: doctype, head, body, that's all. Just mark it up and do NOT look at it before you end, mark it up as it were article or something. The appearance is up to css.
CSS is simple. You may even forget bem or rscss, you're already a skilled software developer. Use common sense and your code-splitting and naming skills you gained reading The Code Complete or doing software development for years.
Forget mockups. Forget absolute positioning, forget setting width and height in pixels. Go to awwwards, find some inspiration. Draw some buttons and fields on paper with your good old pencil. Then go and write some css. Feel free to steal some shadows and transitions from codepen.
Read about 8-pixel grid system. Let every element push away from others by setting something like margin: 16px; and whoops! You've just got fully responsive and got great vertical rhythm without even using media queries!
Oh my god, do NEVER set width and height explicitly! Type something like button { width: 120px; } and bang! The entire web page is broken. Quit that shit. Let it resize as it should. It will resize itself to fit its contents.
HTML is by default ready for your template engine. That's how you receive data from server — as server-side rendered, plain old HTML page. On the other hand, the form element is the most axiomatic and simple way to send the data to server. That's how you send it — as plain old GET or POST that every webserver can handle.
All of there are true:
1. It's easy to get great 100% responsiveness without media queries.
2. It's easy to align items in row, it's just one line of css. Maybe two, if you still want elements to wrap, but want to use flexbox:
.parent {
display: flex;
flex-wrap: wrap;
}
3. HTML and CSS are fast by default.
4. You don't need mockups to achieve great visual experience. Mockups is imperative, web is declarative.
5. You may not even need JavaScript to make great website.
Go on, ask me a question about web! I'll ready to answer everything.21 -
Sometimes.....
When I want to escape how dull/repetitive/boring the world of web development is. I crack open a nice lil terminal, dust off my gcc/g++ compilers and fuck around in C or C++ till my eyes start to bleed.
I have been fucking around with systems development. Mainly with Linux programming. I have also started to get deeper on game engine design and compiler design....because low level development is where its at.
A man can only fuck around rest apis, css and html and the endless sea of Javascript and other dynamic languages for so long before going crazy.
Eventually.....I would want to code something impressive enough to give me a spot somewhere as a C or C++ developer. I just can't work with web development any longer man. It really is not what I want to do, the fact that I do it(and that I am good at it) is circumstantial more than because I really enjoy it. I really don't12 -
+++ Microsoft switches to the open-source Chromium engine for the Edge browser +++
On December 6th, Microsoft announced that they will dump their own Edge engine and replace it with Chromium, an open-source browser engine developed by Google.
This way they are promising the ~2% of global internet users who prefer Edge over other browsers to experience a better web experience.
The about 2% of market share is one of the reasons Microsoft decided to stop developing their own engine. It's just not worth it.
Joe Belfiore, corporate veep of Windows, said they also want to bring Edge to other platforms, like macOS, to target more audiences.
Web-Developers, like myself, will most likely have the most to gain. Less browsers to target means less incompatibility issues.
There are a lot of HTML5 features that the Edge engine doesn't support...
The new Edge won't be a UWP app, in order to make it usable outside of Windows 10. Instead, it will be build in accordance with the Win32 API, so we can even expect support for older Windows versions, like Windows 7 and 8. A preview release is planned for early 2019.
Because they are switching to Chromium and the Win32 API, Microsoft is hiring new developers! So if you always wanted to work at Microsoft, now is your chance!
That's it!
Thanks for reading!
Source: https://theregister.co.uk/2018/12/...11 -
Somebody asked on how to get started on Full Stack web application development.
This is how I got started.
Client side Web Application Development:
---------------------------------------------------------------
• Start with basic HTML, CSS and JS, JSON. For quick learning, see W3Schools for these topic or YouTube it.
• Get a local web server. "200 OK!" webserver chrome extension is a good start. (https://chrome.google.com/webstore/...)
• Learn Chrome Dev Tools to debug the pages. YouTube it.
• Get a good IDE. I am very happy with VSCode. You can use it for very serious WebApps.
• Start learning JavaScript language in depth, but just related to Web Browser related topic or you would get sucked in server side too early.
• Install node.js. Learn NPM package manager. Learn basic node commands.
• Learn complexity of JS file referencing, JS modules in browser. Just learn, don't use it yet, to understand the benefits of code bundlers.
• Learn Webpack code bundler.
• Learn how to make you simple site much faster and using in Mobile using "Progressive Web Apps".
• Now learn to make modular UIs. I love React. Focus on getting the UI code modulear. Create Single Page sites. (You are not there yet to create a Web App) “Create-React-App” started kit is a good starting point.
• Learn to create multi-page site using React-router.
• Learn application state management using Redux.
• Learn to create application decision engine using Redux-Saga.
Practice and master each stage.
Along above, learn git / GitHub (to learn from others code), find good web resources like Medium / Smashing magazine, good YouTube channels etc. I subscribed to some popular Udemy courses too.
Server side Web development:
------------------------------------------
:) First learn client side Web Application development. Server side learning is another story.3 -
Tl;Dr - It started as an escape, carried on as fun, then as a way to be lazy, and finally as a way of life. Coding has defined and shaped my entire life from the age of nine.
When I was nine I was playing a game on my ZX spectrum and accidentally knocked the keyboard as I reached over to adjust my TV. Incredibly parts of it actually made a little sense to me and got my curiosity. I spent hours reading through that code, afraid to turn the Spectrum off in case I couldn't get back to it. Weeks later I got hold of a book of example code to copy out to do various things like making patterns on the screen. I was amazed by it. You told it what to do, and it did it! (don't you miss the days when coding worked like that?) I was bitten by the coding bug (excuse the pun) and I'd got it bad! I spent many late nights on that thing, escaping from a difficult home life. People (especially adults) were confusing, and in my experience unpredictable. When you did things wrong they shouted at you and threatened to take you away, or ignored you completely. Code never did that. If you did something wrong, it quietly let you know and often told you exactly what was wrong. It wasn't because of shifting expectations or a change of mood or anything like that. It was just clean logic, simple cause and effect.
I get my first computer a year later: an IBM XT that had been discarded by a company and was fitted with a key on the side to turn it on. With the impressive noise it made it really was like starting an engine. Whole most kids would have played with the games, I spent my time playing with batch scripts and writing very simple text adventures. And discovering what "format c:" does. With some abuse and threatened violence I managed to get windows running on it. Windows 2.1 I think it was.
At 12 I got a Gateway 75 running Windows 95. Over the next few years I do covered many amazing games: ROTT, Doom, Hexen, and so on. Aside from the games themselves, I was fascinated by the way computers could be linked together to play together (this was still early days for the Web and computers networked in a home was very unusual). I also got into making levels for Doom, Heretic, and years later Duke Nukem 3D (pretty sure it was heretic; all I remember is the nightmare of trying to write levels entirely by code!). I enjoyed re-scripting some of the weapons and monsters to behave differently. About this time I also got into HTML (I still call this coding, but not programming), C, and java. I had trouble with C as none of the examples and tutorial code seemed to run properly under a Windows environment. Similar for my very short stint with assembly. At some point I got a TI-83 programmable calculator and started rewriting my old batch script games on it, including one "Gangster Lord" game that had the same mechanics as a lot of the Facebook games that appeared later (do things, earn money, spend money to buy stuff to do more things). Worried about upcoming exams, I also made a number of maths helper apps, including a quadratic equation solver that gave the steps, and a fake calculator reset to smuggle them into my exams. When the day came I panicked and did a proper reset for fear of being caught.
At 18 I was convinced I was going to be a professional coder as I started a degree in Computer Science. Three months later I dropped out after a bunch of lectures teaching what input and output devices were and realising we were only going to be taught Java and no C++. I started a job on the call centre of a big company, but was frustrated with many of the boring and repetitive tasks we had to do. So I put my previous knowledge to use, and quickly learned VBA to automate tasks. It wasn't long before I ended up promoted to Business Analyst where I worked on a great team building small systems in Office, SAS, and a few other tools.
I decided to retrain in psychology, so left the job I was in and started another degree. During my work and placements my skills came in use a number of times to simplify and automate tasks. I finished my degree, then took a job as a teaching assistant while I worked out what I wanted to do next and how to pay for it. Three years later I've ended up IT technican at the school, responsible for the website, teaching a number of Computing lessons each week, and unofficial co-coordinator for Computing as a subject. I also run a team of ten year old Digital Leaders who I am training in online safety and as technical experts; I am hoping to inspire them to a future in coding. In September I'll be starting teacher training with a view to becoming a Computing specialist teacher. Oh, and I'm currently doing a course in Android Development in my free time.
And this all started with an accidental knock on the keyboard of a ZX Spectrum.6 -
😲😲😲
Holy shit, wow I did not see that coming at all. I've this is all I've ever dreamed of as web dev but now I'm not too sure how I feel. Edge gone, safari dying and Firefox struggling...
I wanted one web standard, not one browser engine.10 -
Chrome, Firefox, and yes even you Opera, Falkon, Midori and Luakit. We need to talk, and all readers should grab a seat and prepare for some reality checks when their favorite web browsers are in this list.
I've tried literally all of them, in search for a lightweight (read: not ridiculously bloated) web browser. None of them fit the bill.
Yes Midori, you get a couple of bonus points for being the most lightweight. Luakit however.. as much as I like vim in my terminal, I do not want it in a graphical application. Not to mention that just like all the others you just use webkit2gtk, and therefore are just as bloated as all the others. Lightweight my ass! But programmable with Lua, woo! Not like Selenium, Chrome headless, ... does that for any browser. And that's it for the unique features as far as I'm concerned. One is slow, single-threaded and lightweight-ish (Midori) and another has vim keybindings in an application that shouldn't (Luakit).
Pretty much all of them use webkit2gtk as their engine, and pretty much all of them launch a separate process for each tab. People say this is more secure, but I have serious doubts about that. You're still running all these processes as the same user, and they all have full access to the X server they run under (this is also a criticism against user separation on a single X session in general). The only thing it protects against is a website crashing the browser, where only that tab and its process would go down. Which.. you know.. should a webpage even be able to do that?
But what annoys me the most is the sheer amount of memory that all of these take. With all due respect all of you browsers, I am not quite prepared to give 8 fucking gigabytes - half the memory in this whole box! - just for a dozen or so tabs. I shouldn't have to move my web browser to another lesser used 16GB box, just to prevent this one from going into fucking swap from a dozen tabs. And before someone has a go at the add-ons, there's 4 installed and that's it. None of them are even close to this complete and utter memory clusterfuck. It's the process separation. Each process consumes half a GB of memory, and there's around a dozen of them in a usual browsing session. THAT is the real problem. And I want to get rid of it.
Browsers are at their pinnacle of fucked up in my opinion, literally to the point where I'm seriously considering elinks. Being a sysadmin, I already live my daily life in terminals anyway. As such I also do have resources. But because of that I also associate every process with its cost to run it, in terms of resources required. Web browsers are easily at the top of the list.
I want to put 8GB into perspective. You can store nearly 2 entire DVD movies in that memory. However media players used to play them (such as SMPlayer) obviously don't do that. They use 60-80MB on average to play the whole movie. They also require far less processing power than YouTube in a web browser does, even when you download that exact same video with youtube-dl (either streamed within the media player or externally). That is what an application should be.
Let's talk a bit about these "complicated" websites as well. I hate to break it to you framework web devs, but you're a dime a dozen. The competition is high between web devs for that exact reason. And websites are not complicated. The document itself is plain old HTML, yes even if your framework converts to it in the background. That's the skeleton of your document, where I would draw a parallel with documents in office suites that are more or less written in XML. CSS.. oh yes, markup. Embolden that shit, yes please! And JavaScript.. oh yes, that pile of shit that's been designed in half a day, and has a framework called fucking isEven (which does exactly what it says on the tin, modulo 2 be damned). Fancy some macros in your text editor? Yes, same shit, different pile.
Imagine your text editor being as bloated as a web browser. Imagine it being prone to crashing tabs like a web browser. Imagine it being so ridiculously slow to get anything done in your productivity suite. But it's just the usual with web browsers, isn't it? Maybe Gopher wasn't such a bad idea after all... Oh and give me another update where I have to restart the browser when I commit the heinous act of opening another tab, just because you had to update your fucking CA certs again. Yes please!19 -
Just added an RSS feed to my blog (https://nixmagic.com/rssfeed.xml/ if you're interested), and as I was testing it out in an RSS reader, I noticed that the reader basically just renders the webpage as if it were a web browser.
Heh.. I have only the Webkit engine on my computer, so I suppose it's just using that in the backend or something like that? How much RAM does that consume?
*looks at Task Manager*
67MB. I shit you not.. 67 megabytes. And that is rendering an entire website with no noticeable differences from a regular web browser.
Chrome: *gobble*8 -
in the past 48 hours my partner must have asked me 50 times to create an "AI" that can get the data we need off of wikipedia.
Background: I am in AP Computer Science AB but I have been programming long enough that this class is a joke. We were assigned to partners with the task of creating a search engine that finds informations on wikipedia("which is dumb because thats what the search tool is for") so I created a Java Web-Scraping program in probably 30 minutes and showed my partner. He told me I am completely wrong because it would be "cool" to incorporate machine learning into the assignment.
Do I even tell his what machine learning is or should I just let his figure it out?7 -
I wrote a node + vue web app that consumes bing api and lets you block specific hosts with a click, and I have some thoughts I need to post somewhere.
My main motivation for this it is that the search results I've been getting with the big search engines are lacking a lot of quality. The SEO situation right now is very complex but the bottom line is that there is a lot of white hat SEO abuse.
Commercial companies are fucking up the internet very hard. Search results have become way too profit oriented thus unneutral. Personal blogs are becoming very rare. Information is losing quality and sites are losing identity. The internet is consollidating.
So, I decided to write something to help me give this situation the middle finger.
I wrote this because I consider the ability to block specific sites a basic universal right. If you were ripped off by a website or you just don't like it, then you should be able to block said site from your search results. It's not rocket science.
Google used to have this feature integrated but they removed it in 2013. They also had an extension that did this client side, but they removed it in 2018 too. We're years past the time where Google forgot their "Don't be evil" motto.
AFAIK, the only search engine on earth that lets you block sites is millionshort.com, but if you block too many sites, the performance degrades. And the company that runs it is a for profit too.
There is a third party extension that blocks sites called uBlacklist. The problem is that it only works on google. I wrote my app so as to escape google's tracking clutches, ads and their annoying products showing up in between my results.
But aside uBlacklist does the same thing as my app, including the limitation that this isn't an actual search engine, it's just filtering search results after they are generated.
This is far from ideal because filter results before the results are generated would be much more preferred.
But developing a search engine is prohibitively expensive to both index and rank pages for a single person. Which is sad, but can't do much about it.
I'm also thinking of implementing the ability promote certain sites, the opposite to blocking, so these promoted sites would get more priority within the results.
I guess I would have to move the promoted sites between all pages I fetched to the first page/s, but client side.
But this is suboptimal compared to having actual access to the rank algorithm, where you could promote sites in a smarter way, but again, I can't build a search engine by myself.
I'm using mongo to cache the results, so with a click of a button I can retrieve the results of a previous query without hitting bing. So far a couple of queries don't seem to bring much performance or space issues.
On using bing: bing is basically the only realiable API option I could find that was hobby cost worthy. Most microsoft products are usually my last choice.
Bing is giving me a 7 day free trial of their search API until I register a CC. They offer a free tier, but I'm not sure if that's only for these 7 days. Otherwise, I'm gonna need to pay like 5$.
Paying or not, having to use a CC to use this software I wrote sucks balls.
So far the usage of this app has resulted in me becoming more critical of sites and finding sites of better quality. I think overall it helps me to become a better programmer, all the while having better protection of my privacy.
One not upside is that I'm the only one curating myself, whereas I could benefit from other people that I trust own block/promote lists.
I will git push it somewhere at some point, but it does require some more work:
I would want to add a docker-compose script to make it easy to start, and I didn't write any tests unfortunately (I did use eslint for both apps, though).
The performance is not excellent (the app has not experienced blocks so far, but it does make the coolers spin after a bit) because the algorithms I wrote were very POC.
But it took me some time to write it, and I need to catch some breath.
There are other more open efforts that seem to be more ethical, but they are usually hard to use or just incomplete.
commoncrawl.org is a free index of the web. one problem I found is that it doesn't seem to index everything (for example, it doesn't seem to index the blog of a friend I know that has been writing for years and is indexed by google).
it also requires knowledge on reading warc files, which will surely require some time investment to learn.
it also seems kinda slow for responses,
it is also generated only once a month, and I would still have little idea on how to implement a pagerank algorithm, let alone code it.4 -
I just installed Opera Mini on my PSP. That alone isn't very exciting on its own, although I am stoked that my website does in fact render on a device from 2009. With the helpful guidance of a laptop from 2004 that's doing the hotspot duties for this thing.
No, what really got me stoked is that Opera still supports these old platforms, and how small they managed to make it. The .jar file for Opera Mini 4.5 is ~800kB large. There's a .jad file as well but it's negligible in size and seems to be a signature of sorts.
Let that sink in for a moment. This entire web browser is 800kB. Firefox meanwhile consistently consumes 800 MEGABYTES.. in MEMORY. So then, I went to think for a moment, how on earth did they manage to cram an entire functioning web browser in 800kB? Hell, what makes up a web browser anyway?
The answer to that question I got to is as follows. You need an engine to render the web page you receive. You need a UI to make the browser look nice. And finally you need a certificate store to know which TLS certificates to trust. And while probably difficult to make, I think it should be possible to do in 800k. Seriously, think about it. How would you go *make* a web browser? Because I've already done that in the past.
Earlier I heard that you need graphics, audio, wasm, yada yada backends too.. no. Give your head a shake. Graphics are the responsibility of the graphics driver. A web browser shouldn't dabble with those at all. Audio, you connect to PulseAudio (in Linux at least) and you're done. Hell I don't even care about ALSA or OSS here. You just connect to the stuff that does that job for you. And WebAssembly.. God I could rant about that shit all day. How about making it a native application? Not like actual Assembly is used for BIOS and low-level drivers. And that we already have a better language for the more portable stuff called C.
Seriously, think about it. Opera - a reputable browser vendor - managed to do it in 800kB on a 12 year old device. Don't go full wank on your framework shit on the comments. And don't you fucking dare to tell me that there's more to it. They did it for crying out loud. Now you take a look at your shitpile for JS code and refactor that shit already. Thank you.21 -
!dev
I have a couple of thoughts about social justice controversies from these last years.
I think it's hard to have a good opinion about these events for several reasons.
One reason is that finding good information in 2019 is very hard.
Revenue based sites (thus unneutral) dominate the search results. You search about something and you find thousands of sites basically saying the same thing (because they copy each other).
That's why the existence of a free and open search engine is so important, so it's easier to find neutral hence good information on which to base your opinions, but they are prohibitively big for small groups to build.
Another reason is that controversies generate shock and shock curtails rational thinking. Maybe that's how the primitive brain works?
I'm not much of a scholar to feel confident to say that, but it's so recurrent that it's not too much of a wild guess.
When a controversy happens, a natural reaction is to pick a side. This means that:
a) we assume that there are only 2 sides, and
b) we must pick one of them
So, maybe the human is a bad politician by nature?
Also, because of the shock controversies generate, peaceful dialogue is very rare.
I have yet to see peaceful dialogue online about what patriarchy means to feminists and a lot of other terms they use.
I don't care much about feminists that vandalize or interrupt talks (yelling over someone else is abuse in my opinion).
But for the rest of them, I think discussing their ideas would be good.
I say this because most feminist discourse I see online is not open. Or maybe there are such instances but the web is so big that it's hard to find such instances.
I think some part of the modern feminist doctrine is bullshit, and some part is true.
I for one hate when some men I know in life expect their wives to be their cooks+cleaners (unless they want to do that, willingly). Personally, I'd encourage my wife to get a job (rightfully so, not just to meet some minority quota in some company).
I don't mind either calling a trans person the pronoun she wants.
But other ideas are awful, like the idea that meritocracy is patriarchy, so you need to force minorities to meet a proportionate quota. That's terrible reasoning.
Or the excessive self appreciation culture, like saying to yourself "you are pretty, you are beautiful, you are perfect". I think that grows arrogance and black-or-white thinking.
And some other ideas as well.
I guess the same you can say about any doctrine with different degrees. Some part is bullshit, some part isn't.
Some right wing people hate everyone who isn't white by default, but some want to have more immigration control.
I sure don't like the experiment of separating children from families like the current us govt did, but I wouldn't be happy either to know that by '99 50% of gangs members in the us were hispanic.
With this, I'm not going to say "embrace everyone's ideas" like an idiot. I hate when people do that. It's a stupid and weak reaction to radicalism.
In fact I think the way you fight radicalism and bad doctrines is that you listen to them and maintain good dialogue and counterargue in a respectful but insightful manner.
Making snide remarks, insulting or trolling won't change anyone's mind. That is just throwing fire to the fire.
In fact, when someone gets harassed because of something they believe in, usually it results in even more adherence to their beliefs, because of the usual assumption that success or goodness is full of strife.
So by telling a "sjw" or kkk member that they are idiots over twitter, you are in fact making them stronger believers in their doctrine.
Think of Daryl Davis, a black guy that made 200 members leave the kkk. How? He didn't tell them they were assholes, he somehow made friends with them.
I feel bad now because I've been trolling new devrant users a lot because of how they worsen the quality of the site, but maybe I should tell them that they are ruining the site somehow in a nice way and maybe they'll listen? I dunno...23 -
Use a search engine!* I've known too many beginner developers that refuse to consult the web.
*I should add, make sure you understand what you find. Don't just copy a solution and not learn from it.2 -
Google Business Profile is probably not meant for developers. "Help customers find your business by industry." Dev: set primary category to "Web Developer". Google: We didn't understand your category. Please select from the suggestions that appear when typing. Dev, typing: "Web D"... Google suggests: "Web Designer, Web hosting company, Well drilling contractor, Waterbed shop". Okay, Google, nevermind.
Google: "Update your customers. Keep your customers up to date about your business!" Dev clicks "add update", adds info about that customer should use different phone number temporarily due to broken phone. Google: "Your post has been removed from your Business Profile on Google because it violates one or more of our post content policies." Okay Google, at least you let me add an additional phone number on my profile without requiring to verify my primary number that I currently have not access to. Anything else?
Google: "Claim your €400 free advertising credit" Dev: clicks "claim credit" Google: "To access this Google Ads account, enable 2-Step Verification in your Google account." How to combine idiocy and deceptive patterns in a single UI: Google knows! Apart from their search engine, their unique business advantage is simple that they suck a little less than Apple and Microsoft. Sorry, not a day to be proud of our profession, once again.5 -
So I currently use Edge as my web browser (and DuckDuckGo as my search engine) because I avoid Google’s services when possible. I have heard several good comments about Firefox recently. Is it worth the switch?19
-
I despise it when software developers remove features because "too few people use them".
Is this what those shady telemetry features are for? So they can pick which useful features to get rid of because some computer rookies whined that it is "feature creep" rather than just ignoring it?
Now I have to fear losing useful (or at least occasionally convenient) features each time I upgrade, such as Firefox ditching RSS, FTP, and the ability to view individual cookies. The third can be done with an extension, but compatibility for it might be broken at some point, so we have to wait for someone to come up with a replacement.
Also, the performance analysis tool in the developer tools has been moved to an online service ("Firefox profiler"). I hope I don't need to explain the problems with that.
But perhaps the biggest plunge in functionality in web browser history was Opera version 15. That was when they ditched their native "Presto" browsing engine for Chromium/Blink, and in the process removed many features including the integrated session manager and page element counter.
The same applies to products such as smartphones. In the early 2010s, it was a given that a new smartphone should cover all the capabilities of its predecessors in its series, so users can upgrade without worrying a second that anything will be missing. But that blissful image was completely destroyed with the Galaxy S6. (There have been some minor feature removals before that, such as the radio and the three-level video recording bitrate adjustment on the S4, but that's nothing compared to what was removed with the S6.).
Whenever I update software to a new version or upgrade my smartphone, I would like it to become MORE capable, not LESS (and to hell with that "less is more" nonsense).10 -
It begins..
Soon we will rule these lands..
*chromium speaking in deep gandalf's voice*
https://github.com/MicrosoftEdge/...8 -
If you are a web developer, consider using proper page titles.
Page titles are one of the most basic elements of a web page and yet websites often fail to make proper use of them.
Without a proper page title, your user does not have an accurate idea of what page is in the tab without having to open the tab, which gets tedious if many tabs are open. With a proper page title, an instant glance on the tab does suffice.
Some sites only put in their site name or something like "Search - Site Name" without including the search query in the page title, or "User profile - Site Name".
An example of this is, disappointingly, archive.org. As thankful as I am for the Archive, they could make better use of page titles to make browsing their library more convenient. While they use proper page titles on item pages (including both title and author!), they use non-descriptive titles on their 2023 search feature (downgraded from lightweight static HTML+AJAX to a JavaScript app) and user profile pages.
The user name of a profile or a search query and ideally a page number should be in the page title so a browser tab with a search can be found faster and can also be seen on social media sites that auto-generate preview cards with page titles.
Descriptive page titles also improve your search engine ranking! You surely don't want to miss out on that, do you?19 -
C'mon, really?
Okay, I understand that they want to lock down the Chromebooks they send home with us, we don't own them and they have the right to do that. But I'm still annoyed when I find "harmless" stuff is blocked.
They said it themselves that they want us to be able to do basically anything we want web browsing wise on them.
It's not a fun experience to say to your self "hey let's look at the current humble bundles!" just to find that humblebundle.com is blocked for "games". (Which makes sense, but I can't remember any other examples)
Imagine thinking to yourself "I'm going to go to the Os Dev Wiki" and typing that into the Omnibox (tm) and pressing enter, directing you to your favorite search engine duckduckgo, but instead of finding the amazing duckduckgo results page you find the godforsaken securly "THIS PAGE IS BLOCKED" screen.
I can guess why they do that (probably because, to my knowledge, duckduckgo doesn't have any form of "safe-search" feature they can force it to use because they do that) but it's kind of annoying to not be able to use your favorite search engine anymore.
Should I really be getting so annoyed at this? No, because it's not my device, it's theirs and, they have the final say on what goes, but sometimes it really annoys me. I should be, and am, thankful they even let us bring the Chromebooks home, which is pretty cool.
Ugh...
If you want a fun time, just read the reviews on the Securly extension in the chrome web store!6 -
-Rant-
How do you (not) secure your Rest based web service?
1. Chain it to shady organic authentication system built by a hoard of monkeys high on Tequila.
2. have secret keys that get copy pasted into config flat files, and index them on your code search engine.
3. make the onboarding extremely platform specific that you need 500 environment variables, 50 scripts, 5 fancy device presses and a tap dance to make a GET call to the service.
4. fish through 500 rotating log files that the authentication system generates for each API call made.
5. Leave traces all over the host so if you have to start over, you should sudo rm -rf / and set fire to your computer. -
I made my passion my job, programming servers & web dev. Although it has been productive economically it has sucked the fun out of programming servers for me...so as a way to rediscover my passion I'm giving game dev a try. After a couple of weekends playing with a game engine this is what I've got, a monkey dev with a suit that jumps from project cabinet to project cabinet avoiding hazards, drinking coffee and trying to make some money (someone told me I should express myself and I took that personally).
I'm pretty much done but the hazard placeholders (a box and an arrow) don't convince me so I wanted to see if my fellow disenfranchised developers had some ideas of what my developer should be avoiding/being hit by, preferably something I could draw easily since as you can see I'm not much of an artist although I've also though of just words falling like "deadline" or something.
Anyway any feedback is welcome, take it ez I've never drawn anything more than a stickman and this is my first attempt at something playable. Small Rant plus question. Happy Monday.13 -
Sometimes lack of confidence in one area reveals oversight cockyness in stronger areas:
Set up a simple login system from Unity engine to php to mysql db, using android device ID as the login id. Set up database column to accept 32 length varchar for MD5 hashed strings, as I knew the method I was getting the android device ID was automatically being hashed that way and more or less was what I wanted anyway.
Spend 2 days wondering why it would insert the logins with 0 issue, but could never retrieve them. Due to lack of web development and PHP skills, I assumed I was screwing up the handling of mysqli_num_rows() (to check whether I was inserting or selecting in the query) or simply screwing up my SQL queries.
Rewrite the code a few times, even went back to a method I had used in the past.
Today it dawned on me that my testing machines deviceID had been getting trimmed to the 32 character limit. Turns out I didn't account for my workstations device ID to be automatically hashed like the android device id is.
For 2 days I was obtaining and sending a 40 character string to a 32 character limit varchar and blaming my lack of PHP skills........
Back to my niche I go!1 -
Holy fucking shit are email clients bullshit.
I don't know what happened there but if you thought the chrome-firefox-ie-egde gaps back in the days were sick - let me tell you.. email clients are made by the devil himself. All of them. All of them? Yup. Because he made some of them being owned by apple, working beatuiful and no weird stuff.
But on the same end he made some of them owned by microsoft and their office Studios. They use the word engine to render html emails. Read this again. Read it without starting to cry in agony.
But thats not enough. Let's make some of them use an ie-engine and the mac os variants going to use some webkit based renderer. This way there will be no valid ruleset to make it look good on all of them, isn't this great??
Now this might be hell already. But lets pour more salt into these wide opened wounds.
Let there be Germany and United Internet, owning trash like Web.de and GMX, whose android clients going to work completely different across Android and app-versions!
Once you've mastered these, let me introduce you to gmail. Lets take only the body node of your email and do some fuck up with it, so you have to display a non-responsive variant on mobile.
Now you might be thinking "but there are web-based clients, they'll do good ain't they?" Long story short: fuck you.
Not enough.
Let's go back to ms.
Hey dude lets make it possible to scale up your whole system. So old people can read shit better. And now the funny part: let's make it so that the word rendering engine, rendering emails goes completely mayhem on your mail, so it looks like a completely different thing! (:
If you ever receive a newsletter in your inbox and that shit looks like it's planned to look like.. appreciate that shit. Sacrifice a virgin as thanksgiving for it.
TL;DR:
E-Mail needs to die. I'm doing this for over 2 years now and this shit needs to stop asap.2 -
the more i learn about web dev, the more i realise the reason for its mess up . There are 2 major problems in it : the people who create various important concepts and tools for web dev were 1) working on it without any collaboration and agreements on the philosophy and 2) were too stubborn on their ideology i guess.
There is no limitation to anything's functionalities, and the limits that are "defined" are badshit crazy. for eg:
====================================
HTML creator : "I am gonna make a language that would provide a skeleton to web page. it will just have the text and basic markers to let the scripting and styling engines/languages know which text is supposed to be rendered and how.
It won't provide any click or loading functionality.
someone: "So i guess opening a page or loading an image would be handled by JS or other programming language? also, bold , italic or division would be added via CSS?"
HTMLguy : Nah, my html engine would ALSO do that.
someone : what , why? won't that just be stupid and against your philosophy?
HTMLguy : WHAT? am too awesome, can't hear you
w3c , 50 yrs later : sorry can't change this, gotta support the 50 yrs of web dev and billion sites
=================================
CSS guy: I am gonna make the world's best beautifying stylesheet language to provide colors, styling, fonts and backgrounds to a page. every loadings and clicks would be handled somewhere else
Some1: cool, then clicks, hover and running of animation would be handled by JS only
CSSguy :Umm, i guess i could handle those.
Some1 wha-?
CSSguy : Thankyou Thankyou Thankyou for the nobel price!
====================================
JS guy : I am gonna make a god web programming language! It can do everything: add/remove html tags, add styling, control animations, control browser, handle clicks , perform operations, everything!
some1: cool! you must be making very large programming language with lots of modules.
JS guy: No! i am gonna keep it small. no built in classes and file imports! just use the functions directly. if someone wants the additional lib functionality, install them on your server
some1 : innovative! what's typeof NaN ?
JSguy :shut up.6 -
I've been out of the loop with websites and frontends for a while. Now, is it me or is it just overengineered to make a static website that's not a blog these days?
I mean, I need to make a landing page. 6 sections + footer. And I don't want to end up with a 600+ lines html file. With tailwind possibly.
JEKYLL
I've used it a few times, and after 3 years I still get some weird error when installing everything. Maybe it's trivial, but I know shit about ruby. Plus, I don't need ruby for anything else, and the official Docker image just doesn't work, exactly like the quickstart tutorial. 3 years later, same issues.
HUGO
I like this guy but god, the docs are just unreadable, it's not compatible with tailwind 3.x (or smth) and it's been a pain to build a user-configurable homepage. Plus, it does more than half of the work by itself, Fair enough, it's supposed to be used for blogs.
ANY OTHER "JAMSTACK" BULLSHIT
Anything is either a blogging engine or delivers some crappy javascript blob from hell. I just need an html document, that weird thingie the whole World Wide Web was built upon, broken into pieces so I can keep my sanity.
Looking forward to get the fucking AWS Solutions Architect. Looking even more forward to build my farm.8 -
Question for those that switched from Web, Mobile Apps development, Full-stack development to Game development after a year or more:
- Do you regret the change?
- What Game engine do you use?
- What Programming language do you use?question frontend full stack unreal engine javascript apps web mobile unity game engine backend games4 -
Imagine a web way ahead of our time where its size goes beyond our imagination...
This is my first rant, and I'll cut to the chase! I don't like how web currently stands. Here's what makes me angry the most altough I know there's a myriad of solutions or workarounds:
- A gazillion credentials/accounts/services in your lifetime.
- Everyone tries to reinvent the wheel.
- There's no single source of truth.
- Why the fuck there's so much design in a vision that started as a network of documents? Why is it that we need to spend time and energy to absorb the page design before we can read what we are after?
- What's up with the JS front end frameworks?! MB's of code I need to download on every page I visit and the worse is the evaluation/parsing of it. Talk about acessibility and the energy bills. I don't freaking need a SPA just give a 20-50ms page load and I'm good to go!
- I understand that there's a whole market based on it but do we really need all that developer tools and services?
- Where's our privacy by the way? Why the fuck do I need ads? Can't I have a clue about what I wan't to buy?
Sticking with this points for now... Got plenty more to discuss though.
What I would like to see:
A unique account where i can subscribe services/forums/whatever. No credentials. Credentials should be on your hardware or OS. Desktop Browser and mobile versions sync everything seemlesly. Something like OpenID.
Each person has his account and a profile associated where I share only what I want with whom I want when I want to.
Sharing stuff individually with someone is easy and secure.
There's no more email system like we know. Email should be just email like it started to be. Why the hell are we allowing companies to send us so much freaking "look at me now, we are awesome", "hey hey buy from me".. Here's an idea, only humans should send emails. Any new email address that sends you an email automatically requests your "permission" to communicate with you. Like a friend request.
Oh by the way did I tell you that static mail is too old for us? What we need is dynamic email. Editing documents on the fly, together, realtime, on the freaking email. Better than mail, slack and google docs combined.
In order for that to work reasonably well, the individual "letter" communication would have to be revamped in a new modern approach.
What about the single source of truth I talked about? Well heres what we should do. Wikipedia (community) and Larry Page (concept) gave us tremendous help. We just need to do better now.
Take the spirit of wikipedia and the discoverability that a good search engine provides us and amp that to a bigger scale. A global encyclopedia about everything known to mankind. Content could be curated from us all just like a true a network.
In this new web, new browser or whatever needed to make this happen I could save whatever I want, notes, files, pictures... and have it as I left it from device to device.
Oh please make web simple again, not easy just simple and bigger.
I'm not old by the way and I don't see a problem with being older btw.
Those are just my stupid rants and ideas. They are worth nothing. What I know for sure is that I'll do something about or fail trying to.12 -
i wrote a website, a server in go, a small os in c, a game in js, a game and server and web scraper and other desktop apps in java, mobile apps with flutter, a website with php also, implemented aes in go, wrote a parser in java. done sysadmin stuff on my vps and pihole/openvpn/nextcloud on my rpi. learn about c vulnerabilities and used metasploit. attempted to write an interpreted language. did some led displays with arduino. currently learning tensorflow.
i have never...
- written a driver
- made a game with a game engine
- created a file encoding
- implemented an oauth2 server
- made an api
- worked with vr
what am i missing? i want to be a very well rounded dev.13 -
Hey fellow devRanters,
I'm sure some of you have read about the newest vulnerabilities in Intels Management Engine (ME). I feel like ME and similar "features" are unacceptable backdoors into our systems. Unfortunately Intel and AMD do not offer their customers the option to acquire CPUs that lack these backdoors and make disabling them rather impossible 😒
Thus my question: Do you guys know of any 64-bit "open-source" CPU on the market that is production-ready and suitable for high-traffic web applications? Please note that I don't consider FPGAs to be viable options, since I don't trust Xilinx and Altera either.15 -
Hello all,
I am .NET dev for a while now and web development was mostly my area of expertise. Lately, i got a bit bored with all this and as a passionate gamer, i wanted to try out game development in unreal engine. Naturally i had big plans and went for big PC game but soon realized what enormous task that is. That's why I decided to test myself with mobile games first. Here is the link to my first game created :) https://play.google.com/store/apps/...
If anyone is interested in checking this out i would like to hear your comments and remarks.1 -
Why the fuck nobody talks about Multi-page apps?! We went from a Web where everything was Multi-page server-rendered, and now everything for Web developers is "Single-page apps".
What about websites who can't do that? Not everything can be a single-page app. Only my uncle's restaurant website, or something which is TRULY a full app. No half choices.
If your website is a multi-page app/portal which actually PRELOADS data, instead of doing 100 fetch to an API within a page that is full of loading bars, well, your life is a pain.
When you want a first contentful paint which isn't a white page, well, your life is a pain.
What are React, Vue, Ember, Angular (let's exclude Svelte and Marko) going to do about Multi-page apps and SSR?
React-router sucks to me. It's performance is weak and it's useful only when you have an SPA with multiple sections which can be treated as pages (e.g. A single SPA divided in tabs).
Server-side rendering is the worst pain ever made by humanity, in React (and prob Vue, I didn't try but I can bet). And even when made easier from libs like Svelte and Marko, I (personally) can't get it to be faster enough compared to a traditional website without a JS framework and with a templating engine.
Anyways, if there's anything that I learnt from React, is to stay away from Next.js. Perfect, beautiful, mess.
All JS frameworks just seem to bloat the code and make it worse and slower, even though they're REALLY helpful.
Why? Why everyone loves them if their downsides are so clear? Why 3 projects out of 3 I made (1 React SSR, 1 Vue, 1 Marko SSR) are and will stay painfully slow and bloated, full of shit, even if in 2020 we should have evolved with the famous three shaking, with the famous lazy loading, etc.?
I am just frustrated.
And let's not even talk about Webpack, Rollup, Lasso, those module bundlers shit which are harder to configure and understand than finding a needle in a haystack.
Lasso was the easiest to configure but I anyways can't understand it. Webpack seems it was made to handle SPAs, as any tool in this freaking world, and not even considering an easy way to integrate multiple bundles for multiple pages (I know it's pretty easy, but with component sharing between pages and big unique bundles Next.js handles it soooo bad it feels like hell).
Am I the only one?
Sorry for the long rant. I just needed to rant right now.17 -
Today I found out that my favorite indie game, CrossCode was built using ImpactJS, a javascript/html5 canvas based game engine/library/framework/tumamaencuerada and I was fascinated by it.
The game is absolutely beautiful, plays and works great, badass story mode and combat design. all powered by web tech. I am honestly amazed, I was always under the impression that something like Unity was used to build it.
Gives a bit of hope11 -
Every problem I ever had with a game development engine, only made me hope for something better.
After all, we’re independent developers, not activision! What the hell is an “indie” anyway? I’d even grown a sort of disgust at the term, as if saying it, without having published anything, was being fake. The word felt vapid. Like calling yourself an e-celebrity, or apple putting an i in front of everything.
(Don’t you know its year 20xx, we attach coin to brands now! Dogecoin, ecoin, walmartcoin, hospitalCoin for when you really really just want an appendectomy).
This is my newsletter, Y Intercept, and the story of my many embarrassing failures, and what I have learned from them.
Indie Game Development Tools
https://yintercept.substack.com/p/...
Stay tuned for more, like "how I once redesigned the same interface over two thousand times."
and gems like
"I wish it was more like Minecraft, But With Guns - and the awful ads that FLOODED the internet from that one little, terrible, god awful suggestion."3 -
Without a doubt it has to be the internal company search engine/file finding tool @thewamz and I wrote.
The company has a wide UNC network with files scattered all over the place and they need a way to keep track of where the files get moved to (they can and do get moved). The original tool was written in Java/Tomcat and didn't use any frameworks or utilities beyond custom written ones, no orms, and the SQL was just raw strings. The program didn't take into account that files might be moved or deleted so it never removed anything from the database, it just kept adding files and never removing them.
It however never stores files itself, just links to files elsewhere on the UNC network.
It took six months to get it into what might be a stable beta or release candidate state. The user interface is good, very simple and intuitive, the whole thing was rewritten in python/django, there were issues with utf 8 (and mysql not fully supporting utf 8 in its own utf 8 mode), we added a regex search mode (which was sorely lacking), the search used to take up to fifteen minutes however we sped it up to less than a minute (worst case when a user simply puts "^$" as the regex search). It has a multi threaded design which does some checks to ensure it doesn't spawn too many threads and get stuck in constant Gil switching. Still some bugs to fix, like moving the processing of results returned by the server in a web worker so that the content widget doesn't lock up processing millions of search results and moving the back end to use asynchronous python might gain a performance boost. But on the whole I think the system is ready to replace the older system that all the users are frustrated with and constantly complain about.
However the annoying bit is... How to actually get the new system online, while I am responsible for the development of tools and their maintenance, I am not responsible for their initial deployment and that means I have no idea when (or even if) my new tool will even ever be released :/ -
#need_help
Dear all,
I'm trying to make a choice, a choice that won't make me regret it for the few years advanced, I'm in a dilemma, I don't know which MacBook should I get for my everyday life, I currently work as an iOS developer (Learned iOS using all kinds hackintoshes, yeah I never bought a single apple computer, yet), and always have motivation to learn new stuff (from machine learning, to web development, to making games with unity (or whatever engine), hell I even like to design stuff from time to time using Photoshop, sketch, I sometimes do video editing using premiere and after effects), and I yet have to choose which laptop to get, I got only one week to make the choice so...
Here are the options:
The new MacBook Pro 2016 (Touch Bar edition):
Pros: 'Latest' and 'greatest', have thunderbolt ports which makes it (sort of) future proof, TouchId for unlocking the laptop using a fingerprint.
Cons: You need a damn dongle everywhere, no escape key (Which I use for the autocomplete feature in Xcode), and this touch bar (Which I really have no idea if i will ever use it other than the nyan cat app for 5 minutes), plus I heard about battery issues with it (don't know if they resolved it or not), fucking huge trackpad, and no fucking MagSafe!
The previous model MacBook Pro 2015:
Pros: Ports, lots of them, small trackpad (Which you don't have to worry about your palm screwing up your work), and MagSafe! (Which I honestly don't know if it'll make any difference for my usage)
Cons: has old CPU from Haswell generation (I know that it won't feel different, it's just that I like to have parts that are the 'latest')
Now some questions, for people who have the old MacBooks and new MacBooks:
For the ones with old MacBook:
If you were given the choice to replace the old MacBook for the new one for free, would you go for it?
After all this time, how's the battery performance? is it still great from the time you bought it?
Foe the ones with new MacBook:
Does the huge-ass trackpad interfere your work day?
Do you miss magsafe to a point where you really want to throw out the new laptop and go back to previous model?
Did you get used to carry out dongles everywhere?
Did you like the TouchBar? Does it help you in your everyday work? from designing to coding to whatever, do you think that now you can't live without it?
How's the battery performance?
Is programming on it joyable? or the new keyboard and touchpad are just a meh?
Strawpoll to make it easier to vote:
http://www.strawpoll.me/12856510
In addition to that I would love that you guys detail me your experience and answer some questions that I posted above, I would be very, very grateful.2 -
Plans for 2019 are to release two products.
1. A text-based strategy game engine that will act as the core of two or more progressive web applications, using Node.js/Express, EJS, and SCSS. It will be proprietary, subscription-based, and playable 24/7 online or offline as a web site or mobile app with nightly/weekly/monthly events and items (think KoL, on steroids, with butter on top.)
I am currently undecided whether to go with MongoDB, MySQL or PostgreSQL, so any feedback - without derailing the other choices, and understanding that it needs to be minimal at first with the ability to expand to millions of users - would be appreciated.
2. I'm sculpting collectors figurines of guinea pigs, molding, casting and then selling a limited set that are hand-painted by me with a certificate of authenticity, as well as marketing blank versions of each with a choice of three colors (including white, and either red or black for eyes - a total of five) for people to either paint by themselves, family members, or friends.
This will also have a website that allows you to choose the breed and colors (changing the picture according to your choices), as well as allowing people to use it as a social media outlet - as if their own guinea pigs had profiles instead of humans. It's also planned to support rescues worldwide and educate folks about properly caring for cavies.4 -
My current side project. I’m doing a POC to upskill in functional programming. A Java/Dropwizard web service calling onto business logic written in Clojure. The bit im excited about is an HTML engine im writing in Clojure. So instead of inter-mixing raw HTML with code, my views will be written entirely in Clojure
-
I bought a $1 Steam game called Square Brawl some 5 years ago. It's a minimalistic arena battle with forgiving physics, diverse and satisfying weapons and a geometric design based on squares.
It's among my favourite couch multiplayer games, but the programming is shit. The resolution is weird, the launcher is some default config screen that came with the game engine, with a controller it's tricky to avoid picking a second color by accident which spawns a ghost player that is jointly controlled by the AI and the player. Sometimes the game spawns 10 copies of everyone, all of which you control at the same time. Getting stuck inside walls is commonplace.
On an unrelated note, I'm making a minimalistic arena battle with forgiving physics, diverse and satisfying weapons and a geometric design based on squares. It's gonna be FOSS and web-based. I haven't settled on a name yet but I think Tetragon Tussle might be good.6 -
I am some Kind of angry right now.
Some of you may know the App "Jodel" (for those who don't: it is an app which lets you talk to strangers at in your city/near your location)
I am in an informatics-Channel and I feel a bit annoyed.
There is a groundless hate against JavaScript or Java, it seems because... People feel cool? It remembers me of the PHP-Hate. Clueless people are talking shit, even if the web is not even their programming-field of activity.
Someone just said that in js you can do any shit and it works.
- you can leave out semicolons. wow.
Another one meant that one problem is the unlogical backwards-conpatibility. "You have to look if the script is running on the browsers and on your engine."
- Isn't that part of any programming language? To see if it works?
I don't know what to say right now.
#ilovejs
Uhm btw.: Can someone explain me, what he meant with "engine"? I mean there is an interpreter, but "engine"?!10 -
I've been wondering about SQLite, how it decides to execute your SQL and then generates byte code to do it.
Hypothetically if you were sufficiently familiar with the quarks of SQLite at a low enough level, one could craft web requests on sites running it, such that the results of each subsequent request, leave the SQLite engine in a particular state, no?
Suppose previous states, when interleaved with subsequent carefully crafted states, lead to execution and injection vulnerabilities.
Arent ideas like this what lead to the randomization of jump addresses in modern architectures?8 -
Having a hard time finding work. Jack of all trades, master of none. Went to college for a while, but never finished a degree. Mostly self taught and can easily learn on the fly.
Can program, 3d design and model, ins and outs of unreal engine 4, web stuff, can do IT work, knows VR standards and tricks, powerful desktop and powerful laptop, plenty of uhd cameras, knows Android and ios, etc.
Where do I look? What can I apply for? Can I make money on my own? Can I provide a service? How do I sell that?
HALP 😫8 -
So I am considering side games to add my main games. Mini games I guess they are called. I thought it might be fun to have random chessboards in game you can actually play. I wanted to actually have a decent chess engine behind the game. Off the bat I found a GPL one. I think it is designed to be communicated externally. So what does that mean for using it in my game? If I communicate to an external process is this violating GPL? I have no intention of making my game open source. Well it seems this use case is very nuanced:
https://opensource.stackexchange.com/...
The consensus on a lot of these discussions is the scope of the use of the program. Are you bundling for convenience or bundling for intrinsic utility? This is fascinating because using a compiler on a Windows platform could be a possibly violation. That is a proprietary program calling a GPL one. This is actually handled in the GPL as far as I know. So, if I use a GPL engine as a mini game is that the same as a full blown chess game? What if I support 10 different engines in a full blown chess game?
Now to play devil's advocate even further. Are proprietary phone apps that communicate to GPL software that serve data intrinsically linked? The app will not function without the server or computer os the server runs on. A lot of the web tech is largely GPL or has large amount of GPL programs. Should the web code be under GPL? Should the phone app be under GPL? This sounds ridiculous to some degree. But is that the same as bundling a GPL app and communicating to it from the program via network or command line? The phone app depends upon this software.
Now to protect myself I will find a decent chess engine that is either LGPL or something more permissive. I just don't want the hassle. I might make the chess engine use a parameter in case someone else might want a better engine they want to add though. At that point it is the user adding it. Maybe the fact that it would not be the only game in town is a factor as well.
I am also considering bundling python as a whole to get access to better AI tools (python is pretty small compared to game assets). It seems everything is python when it comes to AI. The licensing there is much better though. I would love to play with NLP for commanding npcs.
I am not discussing linking at all, btw.3 -
Just finished the prototype of my HTML5/Canvas implementation of a visual novel engine. The actual script exists behind the scenes on a REST like web service (to act as a sort of drm). The assets for the game and UI layouts are stored in what I call a shit file. Their is s a utility called the shitpacker that creates a shit file from a directory structure. The name of my engine is the Pyst engine. Pyst stands for Python Stub...as the game script is actually a subset of Python that I created. Eventually I will probably move Pyst to JS so I could hypothetically support offline games.
-
As a developer you're expected to perform all sorts of tasks that don't necessarily involve any coding or development at all. "A web form in Drupal? Uhm, it's got something to do with the web, right? Yeah, let's dump it on 'IT'."
So now I've been given this most frustrating task to use some form engine in Drupal. I have no access to the PHP code itself, and I don't even know what this form engine is called. All I know it's the crappiest of crap. The more I use it the more I hate it. -
Sometimes in our personal projects we write crazy commit messages. I'll post mine because its a weekend and I hope someone has a well deserved start. Feel free to post yours, regex out your username, time and hash and paste chronologically. ISSA THREAD MY DUDES AND DUDETTES
--
Initialization of NDM in Kotlin
Small changes, wiping drive
Small changes, wiping drive
Lottie, Backdrop contrast and logging in implementation
Added Lotties, added Link variable to Database Manifest
Fixed menu engine, added Smart adapter, indexing, Extra menus on home and Calendar
b4 work
Added branch and few changes
really before work
Merge remote-tracking branch 'origin/master'
really before work 4 sho
Refined Search response
Added Swipe to menus and nested tabs
Added custom tab library
tabs and shh
MORE TIME WASTED ON just 3 files
api and rx
New models new handlers, new static leaky objects xd, a few icons
minor changes
minor changesqwqaweqweweqwe
db db dbbb
Added Reading display and delete function
tryin to add web socket...fail
tryin to add web socket...success
New robust content handler, linked to a web socket. :) happy data-ring lol
A lot of changes, no time to explain
minor fixes ehehhe
Added args and content builder to content id
Converted some fragments into NDMListFragments
dsa
MAjor BiG ChANgEs added Listable interface added refresh and online cache added many stuff
MAjor mAjOr BiG ChANgEs added multiClick block added in-fragment Menu (and handling) added in-fragment list irem click handling
Unformatted some code, added midi handler, new menus, added manifest
Update and Insert (upsert) extension to Listable ArrayList
Test for hymnbook offline changing
Changed menuId from int to key string :) added refresh ...global... :(
Added Scale Gesture Listener
Changed Font and size of titlebar, text selection arg. NEW NEW Readings layout.
minor fix on duplicate readings
added isUserDatabase attribute to hymn database file added markwon to stanza views
Home changes :)
Modular hymn Editing
Home changes :) part 2
Home changes :) part 3
Unified Stanza view
Perfected stanza sharing
Added Summernote!!
minor changes
Another change but from source tree :)))
Added Span Saving
Added Working Quick Access
Added a caption system, well text captions only
Added Stanza view modes...quite stable though
From work changes
JUST a [ush
Touch horizontal needs fix
Return api heruko
Added bible index
Added new settings file
Added settings and new icons
Minor changes to settings
Restored ping
Toggles and Pickers in settings
Added Section Title
Added Publishing Access Panel
Added Some new color changes on restart. When am I going to be tired of adding files :)
Before the confession
Theme Adaptation to views
Before Realm DB
Theme Activity :)
Changes to theme Activity
Changes to theme Activity part 2 mini
Some laptop changes, so you wont know what changed :)
Images...
Rush ourd
Added palette from images
Added lastModified filter
Problem with cache response
works work
Some Improvements, changed calendar recycle view
Tonic Sol-fa Screen Added
Merge Pull
Yes colors
Before leasing out to testers
Working but unformated table
Added Seperators but we have a glithchchchc
Tonic sol-fa nice, dots left, and some extras :)))
Just a nice commit on a good friday.
Just a quickie
I dont know what im committing...3 -
Feeling over stressed, over worked and highly underpaid for all this effort. Worst of all I feel the passion leaving me for this work.
I graduated a boot camp last April and was blessed to contract part time at a startup learning how to work in the unity game engine. The team is two other guys, both super smart snd been working in this field for a long time. Since then I’ve added personal projects, finished a data structures and algorithms course and started the Leet code grind. I told this startup that I’d start looking for full time employee positions soon and they understand. They couldn’t offer me much money, or stock options, just experience they said. I feel like I’ve basically been grinding 24/7 since May. I’m going to run out of money soon and it’s all starting to take a toll on my body and mind. I never really sit on the couch or watch something anymore because I feel I should be doing something productive. This just makes me feel like everything I’m doing is meaningless and without impact. I feel like a wheel turning endlessly in sand and not moving forward. I even feel it zapping my passion for developing.
I just can’t help but feel that I’m burning out here. I have a new experimental feature to do for the startup and the amount of things to learn seems overwhelming. Especially with Leet code and interviews coming up. The two other devs on the team are extremely busy as this is a part time endeavor for everyone. I’m also in a relationship I started to feel detached from which causes it’s own stress. I love VR and AR which is why I chose this startup to learn Unity. Now I just feel like I’m dividing my efforts too much. I’m shitty at unity and also less good at web dev than I would have been if I focused on it purely after boot camp grad. On the plus side I will say I’m doing what I want. I just can’t help but feel like that damn tire in the sand turning without traction. And I feel the patience in me for self learning the basics and iteration over a complex project is waning. Without patience the learning is rushed and I don’t learn shit. I also make dumb mistake and “hope” I don’t run into errors. I feel I’m just trying to bang it out for the startup instead of use it learn cool shit. Anyways it feels good to rant. I can’t wait for a full time job, established work hours, and decent pay so I can live life and have off time.
I assume wherever I go I’ll always be in a spot where I need to figure how to get xyz done with minimal help or oversight. I just would like to be paid for it.8 -
A dating simulator game engine for the web. I have created the engine already but I need writers/artist to make a decent demo.4
-
Sharing the repo for a POC im working on right now for anyone interested in Clojure. Im building a web app which serves static HTML generated by a custom engine. You can literally write HTML in Clojure. Its still very much a work in progress.
https://github.com/LikeLikeAteMyShi...2 -
A very long rant.. but I'm looking to share some experiences, maybe a different perspective.. huge changes at the company.
So my company is starting our microservices journey (we have a 359 retail websites at this moment)
First question was: What to build first?
The first thing we had to do was to decide what we wanted to build as our first microservice. We went looking for a microservice that can be used read only, consumers could easily implement without overhauling production software and is isolated from other processes.
We’ve ended up with building a catalog service as our first microservice. That catalog service provides consumers of the microservice information of our catalog and its most essential information about items in the catalog.
By starting with building the catalog service the team could focus on building the microservice without any time pressure. The initial functionalities of the catalog service were being created to replace existing functionality which were working fine.
Because we choose such an isolated functionality we were able to introduce the new catalog service into production step by step. Instead of replacing the search functionality of the webshops using a big-bang approach, we choose A/B split testing to measure our changes and gradually increase the load of the microservice.
Next step: Choosing a datastore
The search engine that was in production when we started this project was making user of Solr. Due to the use of Lucene it was performing very well as a search engine, but from engineering perspective it lacked some functionalities. It came short if you wanted to run it in a cluster environment, configuring it was hard and not user friendly and last but not least, development of Solr seemed to be grinded to a halt.
Elasticsearch started entering the scene as a competitor for Solr and brought interesting features. Still using Lucene, which we were happy with, it was build with clustering in mind and being provided out of the box. Managing Elasticsearch was easy since there are REST APIs for configuration and as a fallback there are YAML configurations available.
We decided to use Elasticsearch since it provides us the strengths and capabilities of Lucene with the added joy of easy configuration, clustering and a lively community driving the project.
Even bigger challenge? Which programming language will we use
The team responsible for developing this first microservice consists out of a group web developers. So when looking for a programming language for the microservice, we went searching for a language close to their hearts and expertise. At that time a typical web developer at least had knowledge of PHP and Javascript.
What we’ve noticed during researching various languages is that almost all actions done by the catalog service will boil down to the following paradigm:
- Execute a HTTP call to fetch some JSON
- Transform JSON to a desired output
- Respond with the transformed JSON
Actions that easily can be done in a parallel and asynchronous manner and mainly consists out of transforming JSON from the source to a desired output. The programming language used for the catalog service should hold strong qualifications for those kind of actions.
Another thing to notice is that some functionalities that will be built using the catalog service will result into a high level of concurrent requests. For example the type-ahead functionality will trigger several requests to the catalog service per usage of a user.
To us, PHP and .NET at that time weren’t sufficient enough to us for building the catalog service based on the requirements we’ve set. Eventually we’ve decided to use Node.js which is better suited for the things we are looking for as described earlier. Node.js provides a non-blocking I/O model and being event driven helps us developing a high performance microservice.
The leap to start programming Node.js is relatively small since it basically is Javascript. A language that is familiar for the developers around that time. While Node.js is displaying some new concepts it is relatively easy for a developer to start using it.
The beauty of microservices and the isolation it provides, is that you can choose the best tool for that particular microservice. Not all microservices will be developed using Node.js and Elasticsearch. All kinds of combinations might arise and this is what makes the microservices architecture so flexible.
Even when Node.js or Elasticsearch turns out to be a bad choice for the catalog service it is relatively easy to switch that choice for magic ‘X’ or component ‘Z’. By focussing on creating a solid API the components that are driving that API don’t matter that much. It should do what you ask of it and when it is lacking you just replace it.
Many more headaches to come later this year ;)3 -
It seems to me that browsers lagging behind is the reason we've seen the JS framework boom both in recent years and ongoing, evident in what they regard as major updates. Most of the functionalities implemented in my time working on the front end are high level problems ubiquitous enough to have been solved at the browser level. Same goes for all the optimizations CSR frameworks are struggling to attain. Every CSR app genuinely feels like recreating a browser, both in UX and dev requirements. These problems exist because current browsers are analog software still accustomed to loading all content at once, no in-app state, just scroll states
The React-Vue-Angular wars of today are a direct hat-tip to the Netscape-Microsoft wars of the early years. If they can form a coalition that sets a standard for syntax, best rendering engine, natural way for user facing devs to control app state, fetch data or connect the back end, somehow render this on the server or find a workaround SEO issues on CSRs, etc, given the shared agreement on expectations for modern web software, it'll be fascinating to see such a possibility8 -
I love this weekly group rant, it made me think back when my mom started to work in a kindergarten and she used to take me to work when i was 4-7 years old ('94 - '97).
There was this "TV" and all the kids used to smash the buttons on it. It also played sound, but there was always a lot of kids there so I was shy to ask them if I push the buttons too. But I was the teachers son, so I didn't had to sleep in the afternoon, and then I discovered this computer thing I was amazed, it was like nothing I saw before, you push it and it does what you pushed and, *_* this smiley is exactly me back then. It was probably an old commodore with green text on the black screen. It was the moment when I decided to get more information about this wonder.
In elementary school (around '98) we had this computer room and as I was one of the best students back then I was granted access to it. It was a huge success in a post communist country to get money for new computers to teach us kids to use them back then, so only the chosen ones could use them, and I was one of them, one of the best time time of my life, honestly. At this moment I knew for sure, I want one and when I grow up I gonna work with them. I had no idea what you can do with it but every adult is talking about how well paid are the people who use them at work. :D it sounds funny now
In '89 or '99 we visited our family in a town far away. My grandfathers sisters boyfriend had a computer and he said, look I also have internet. This face again *_* what the hell is internet. So he explained me this internet thing which "makes all computers connected, but you have to pay for it and it kinda works like wired phones you know. Here you put the address and you can open the website"
me: website, whoooa *_*
8-9 year old clever me: "but how do you know what are the addresses, do you have a phonebook for these addresses?"
he showed me google, and a slovak and czech search engine, I remember searching for "funny pictures" on the slovak search engine, because I was thinking If I search google, its english so he would pay too much :D
I didn't had a computer until I was 13 years old, but then I started to messing with Microsoft Front Page 2003, was amazed with the html and css generated by it and started to editing it.
Now Im a front end web dev -
This is not a rant. Rather just a question or an ask for advice, as I have seen a lot of people talk about web development around here. I am planning to create a website for my search engine. I created a Rest API for my VPS so I can do http requests and retrieve some links for certain key words. But I need some good ideas to do this from a website. As I am not sure what would be the best way to do http requests. As far as I know it's possible with Js and PHP, but I am not sure what's better, more secure or convenient? So here I am to ask you guys, especially those who have experience with this, what I should consider to do.
Oh and please forgive me my limited knowledge about Js and PHP 😅😊3 -
Enabling browser userscripts on Android is not an evident procedure for novice users.
It's annoying if people do want this functionality to change how web pages behave, e.g. they want to fix a broken banner on mobile that doesn't have max-width: 100% but instead crops off on the page.
At this current time, Firefox changed their engine so that it supports only a limited set of add-ons and you'd have to use a nightly build in order to enable other add-ons such as userscript ones.
Chrome doesn't accept add-ons/extensions.
And there's the JavaScript trick but again, not user-friendly.
It's just annoying.2 -
I started using angular about one month ago, I did a long course and now I'm trying to do my first commercial app.
I have to say I really really hate the template engine of angular, I've been web developing for about 5 years, I've used bootsrap, materialize and foundation.
It rally sucks how it's all different in angular, their fucking gryd system didn't even use classes, use weird html tags, and the angular material has very very poor examples and documentation.
Another shitty thing is the Google search, when I search any shit about angular or angular material I have to watch careful if it is angularjs or only angular because most folks switch the names without any criteria.
Why the hell Google has to make a framework so incompatible with standard shit? Why it has to be a pain to use a fucking framework after 5 years of experience?
If someone can give me an advice I will be grateful1 -
A question to game devs : which design/architecture patterns do you use ?
Everytime I try to take a look at game development, I feel like there is a lack of guidelines, mostly about architecture.
It's something strange to me as a web dev, as we use much of these patterns on a daily basis. Of course I think about the near omnipresence of MVC and its variants, but not just that. Most of frameworks we do use are essentially focused on architecture, and we litterally have access to unlimited tutorials and resources about how to structure code depending on projects types ans needs.
Let's say I want to code a 2D RPG. This has been done millions of time across the world now. So I assume there should be guidelines and patterns about how to structure your code basis and how to achieve practical use-cases (like the best way to manage hero experience for example, or how to code a turn-based battle system). However I feel these are much harder to find and identify than the equivalent guidelines in the web dev world.
And the old-school RPG case is just an example. I feel the same about puzzle games or 3D games... Sure there are some frameworks and tools but they seems to focus more on physics engine and graphic features than code architecture. There are many tutorials too, but they are actually reinforcing my feeling : like if every game developer (at least every game company) has his on guidelines and methods and doesn't share much.
So... Am I wrong ? Hope to.
What are the tools and patterns you can reuse on many projects ? Where can I find proper game architectures guidelines that reached consensus ?6 -
Are there out solutions to create cross-platform GUIs withing a GUI (like Blend in Visual Studio) which does interface with C++?(leave out Qt)
Searching the web I only found GUI libraries in C++, which are big turnoff for designers.
Further research leaded me to a viable solution that seems haven't been built yet anywhere, I'm taking about OpenGL\Vulkan as the engine for a cross-platform GUI builder within a GUI.4 -
let's say i want to host my own local search engine, i have the application ready.
now i want to activate my crawlers to scrap and index the web.
would i be in hot water for doing this? is there any implementation level rule that i can check other than robots.txt?
any thoughts or inputs on the subject other than it being a huge waste of time and resources :D.2 -
So I'm about to set up a server for websites and my past experience comes with Linux running Apache. I'm wondering however what you guys would recommend for system and engine (if URL forwarding is included like in Apache that's preferable). I want it to be able to run PHP or similar since I'm looking to create my own CMS (or run C++ if anyone got any good tutorials on how to use that for web development).
Thank you! 😃1 -
!rant
Got bored at work and decided to try out the new Outlook. After 15-20 mins of use I can confidently say this is the first time ever that Outlook didn't suck. It finally replaced Word as an engine and now uses a normal web browser engine. Gone are the days of adapting the fucking mails to Outlook once everyone has the new Outlook. It also feels snappier than before, I like it so far3