It does not handle large volumes of data. I cannot get it to process a simple 50MiB CSV file on my desktop without it freezing for a while.
It does not understand timestamps/dates property. It assumes you have a record for every minute, otherwise 14:01 and 14:35 are put next to each other.
It does not properly handle numbers. Internally everything is stores as a IEEE double.
If a cell contains only digits, and assumes it is a number even though it cannot handle it. "000005234523453249587234985" is simply ruined.
It is the main competitor of a lot of specialized software. I work on software for the logistics sector, a big competitor of our business is MS Excel. If you ever wonder why things went wrong with your online order, there is a fair chance some company used Excel, and messed something up.
It is too easy to use, but too hard to use. It's like MS Paint with numbers.
PS, LibreOffice Calc does not solve many of those issues.
PPS, If somebody knows something between MS Excel and R to handle larger data sets to plot some graphs, please tell me.
If a cell contains only digits, and assumes it is a number even though it cannot handle it. "000005234523453249587234985" is simply ruined.
A quick note on this: If you input '000005234523453249587234985 into the cell it will store as a string and maintain the leading 0's. This is a pain for working with, but does make the numbers display nicely.
I recently found out about this because a user was inputting numbers like this and breaking a formula later on the page 🙃
I see a lot of these as productive compromises rather than bugs, but interesting thoughts in any case. It turns out that all software is built on compromises, even Excel.
Justin helps dev and product teams navigate the waters of mobile app development and is an expert at integrating them into larger technical, customer, and business ecosystems.
The only database that the average person can use without training
I don't have any training. I can't use Excel, aside from filling in values and clicking together basic equations with the GUI. Can I use Excel? Yes. Can I do anything useful with it? No.
I think I get where you are coming from here: Excel is probably easier to learn for non-technical people than other tools for data manipulation and statistics, such as R or Python. But you'd still need training to properly utilize Excel.
Handles gigantic data volumes with extreme efficiency
That is one argument I don't subscribe to at all, I'm with Michiel Hendriks on this one. Everything over ~2500 columns, without complex macros or anything, and you'll wait for it to load way longer than what feels necessary.
A non-negotiable dependency of almost every industry and profession
Aside from the fact that this doesn't say anything about the quality of the software, that's not because of Excel per se, or the lack of alternatives, but a result of Microsoft massively and successfully pushing it for decades.
Passionate about building great technology and connecting with people to create positive change. Happy to answer questions about transitioning to tech. Find me on Twitter @lounecl
Excel is also great for cleaning up data! I use it whenever I need to change formatting for a list of records- remove spaces, add commas, etc
I also love Excel's concatenate feature, which comes in handing for quickly creating arrays and objects from strings. In terms of data handling, it definitely is the best quick tool to use
I graduated in 1990 in Electrical Engineering and since then I have been in university, doing research in the field of DSP. To me programming is more a tool than a job.
The only database that the average person can use without training
Should an untrained person use a database?
This is a kind of advocacy that I hear a lot. "If you use MySQL (or any other DB) you cannot ask your secretary to manage a data base" This sounds to me like "If you use a dentist drill you cannot ask your children to cure your cavities"
Been using UNIX since the late 80s; Linux since the mid-90s; virtualization since the early 2000s and spent the past few years working in the cloud space.
Location
Alexandria, VA, USA
Education
B.S. Psychology from Pennsylvania State University
What would you use instead? The problem that Project tries to solve has always struck me as a pretty tricky one. Not that I've looked in a long time, but I've not seen a better solution.
Been using UNIX since the late 80s; Linux since the mid-90s; virtualization since the early 2000s and spent the past few years working in the cloud space.
Location
Alexandria, VA, USA
Education
B.S. Psychology from Pennsylvania State University
It's more the history/lore behind the project (if people working at Microsoft at the time of its initial release are to be believed).
That said, it's a horribly misused piece of software. Seems like 90% of the people that decide to use it (and not much smaller percentage of the people that should know how to use it) actually know how to use it effectively.
Dev by profession and hobby. Not a ton of time for hobbies these days though! Mom of two young kids. Also really into dog training (agility, nose-work, advanced obedience, etc) & reading fiction. 😃
Everyone has different interpretations of this question, which is fun.
I'd answer this question with...
SQLite
It is installed in practically every computer, phone, etc. on earth.
git
We take for granted how epic a technology git is. It takes on some incredibly difficult problems with grace. Even if its interface is confusing or dangerous at times, its underlying mechanics are so much more sound than most software.
curl
Another one of these ever-present pieces of software that just runs on so many machines and has been getting updates and new features for decades.
That's true, but I still think the shear excellence of it gets taken for granted by the average developer. The fact that we can build software in a distributed manner using this tool is freaking magical.
Yes, everyone uses it. And everyone uses probably about 10% of its capabilities, while thinking it's all it does (push, pull, merge, commit, maybe rebase).
Git is 100% underappreciated. Everyone should have to deal with one of the older, commercial solutions to appreciate it. Working with Subversion and Rational ClearCase definitely set me up to love git.
+1 for SQLite, I wasn't aware about it until I used it in my recent assignment. It is very powerful storage component (remember, I am not saying database server). I'd definitely consider it as a replacement of storing data in files.
+1 for SQLite. I was doing a diff between couple files(several GBs). The Unix tools based on estimate would have taken 3-4 hrs. I loaded them into SQLite, used the MINUS operation and the job was done in 5 mins. Remarkable piece of software for crunching locally stored data.
Programmer, humorist. Host of the Citizen Coder Podcast. I interview developers from all over the world, from beginners trying to break into the industry to senior devs.
Maybe its dumb, but I started using github to log any code I write from scratch, even just method challenges in Java(I'm still learning). Mainly as a way to keep up activity on my account, and also I can look back if I'm unsure how to do something. I also have my personal site hosted on Pages. Nice to have free hosting. I just pay for a custom domain.
From humble beginnings at an MSP, I've adventured through life as a sysadmin, into an engineer, and finally landed as a developer focused on fixing problems with automation.
Sqlite isn't really "built" into anything as there's no DBMS to speak of. Every programming language simply contains modules to interact with its files almost as a rite of passage.
Welcome tag moderator AKA Unofficial DEV cheerleader. While most of my friends are found on SnapChat or Tic-Toc, you can find me here. And I OOP, but I’m not a VSCO girl.
For me, I've been doing a lot of Web API work lately, so Postman has been invaluable in testing my code. It lets you build client-side requests in many formats and keeps track of them all for later use.
Welcome tag moderator AKA Unofficial DEV cheerleader. While most of my friends are found on SnapChat or Tic-Toc, you can find me here. And I OOP, but I’m not a VSCO girl.
Passionate about solving problems since 2012! I'm a full stack web developer with experience in AWS, TypeScript and React. Looking for new opportunities!
I think the advantage is that is web-based, unlike Postman which you have to install.
I've tried to use it but it can't really replace Postman, but maybe they'll eventually make it good enough. It's open source.
Welcome tag moderator AKA Unofficial DEV cheerleader. While most of my friends are found on SnapChat or Tic-Toc, you can find me here. And I OOP, but I’m not a VSCO girl.
I find Insomnia to be easier to use. I needed to read the docs once and after that everting just made sense for me.
With Postman I more frequently had to google my way through the bit more advanced features.
Probably something like openssl. It is responsible for so much of the security provided by TLS that we take for granted on the web and is maintained by just a few people.
It is used by over two thirds of websites and a single vulnerability in it cause cause widespread damage.
From humble beginnings at an MSP, I've adventured through life as a sysadmin, into an engineer, and finally landed as a developer focused on fixing problems with automation.
Not sure how much "appreciation" openssl deserves these days. I think the general rule is you don't implement security yourself and everyone has taken that to an extreme with the particular tool.
Justin helps dev and product teams navigate the waters of mobile app development and is an expert at integrating them into larger technical, customer, and business ecosystems.
Lots of people complain about cell signal coverage and quality. I used to too. Then I worked at Ericsson building software to help the people who engineer the cell towers to optimize their performance.
Wow, there is a lot that goes into cellular software to deal with the constraints of physics and the ever increasing expectations people have (and the increasing number of people/devices)!
Imagine you are talking to someone while driving (or on a train) and the signal needs to hand off from one tower to another at 65mph without dropping quality. Or you are trying to meet with someone near Shibuya Crossing with 2,500 other people and there are dozens of cellular antennas from all different carriers pointing in the same direction but the interference can't drop your call, or if it does, it needs to correct in less than a second so you can still hold a conversation.
My team had to deal with clusters of towers, each sending multiple terabytes of data every 15 minutes. We didn't deal with the software of the towers themselves but had software processing the data sent from them so engineers could then analyze if they should point the antenna in a slightly different direction, or change the gain of an antenna, or if neighboring antennas weren't handing off to each other properly.
The fact that we complain so much about it shows cellular software is very under-appreciated.
I worked for a company that did GSM network optimization for Telcel, in Mexico, and we offered services through Ericsson.
Definitely an extremely interesting business problem. Among other things, I was tasked with building a C# interface (which was essentially not much more than a web app wrapper) with a Google Earth plugin to show the network state on the map, locate traffic, with maps for interference, traffic, handovers, etc.
Justin helps dev and product teams navigate the waters of mobile app development and is an expert at integrating them into larger technical, customer, and business ecosystems.
Very cool. That reminds me I worked with teams in Croatia and Spain who were making similar mapping functionality for an internal web tool. It used the data my team processed. My favorite map to look at was the visualization of neighbor relations
(@anras573
you should take a look at what ANR is in that link, too. I had forgotten about it in my response to you. There are many more acronyms mentioned there you can look up and get a better understanding of this stuff)
Justin helps dev and product teams navigate the waters of mobile app development and is an expert at integrating them into larger technical, customer, and business ecosystems.
Heh, and no one likes getting the bill. My job before Ericsson was working on rating and billing software that needs to handle different kinds of events, several hundred-thousands a second, that need to be processed in accordance with the subscriber's plan so each person will be billed correctly according to text/voice/data rates that may change depending on roaming, or if the destination is a family member, or a toll-free call, etc.
This video gives a very high level overview youtu.be/iMduQ96N1F8. All the training I had was internal, on the job, so I don't know what else to send. You are probably very good at searching, but if you didn't know to search for OSS or BSS, you might not get far. When I worked at Ericsson, we got raw logs from cell towers (which aggregate multiple antennas) and batched data from OSSs which aggregate multiple towers. Both had different data that was important to keep track of.
Netlify - Just how easy it is to deploy your frontend apps with netlify for free.
git - Git is an extremely powerful utility that I'd clearly not live without.
StackOverflow - Just saved me right now after hours pulling my hair.
I'm a huge fan of Netlify's branch previews too :) Makes it so easy to show folks unfinished / unmerged work without them having to pull down and build a whole repo.
So much work relies on it, and it is still a really volatile piece of software. I don't use it that often, but every time I need to use it, something is broken in some way, again. NPM is the Windows Me package/dependency managers.
One of my coworkers would agree with you. I'm still too new to it, though I grabbed some stuff a couple of weeks ago and kept seeing warnings about vulnerabilities and such and I was like, "OK, what the hell am I supposed to do about this?"
I sported a Lumia 630 back in the day and loved it. WP was way ahead of its time.
A secure app store with only Microsoft-verified apps.
No viruses.
Fast as hell: The memory management was really well done. I still have my 630 and it runs the same as it did on its first day.
Ergonomic: Microsoft really understood the ergonomics of using a touchscreen on a small device. They menu bars were at the bottom of the screen rather than the top, the icons/typeface were big. Literally every element in the WP UI toolkit was thoughtfully designed.
Best. Keyboard. Ever.
iOS and Android adopted many of its features: live photos, menu bars at the bottom.
Tiles: Do I need to say more? So fluid!
Restrictive API: This gave apps very limited access to the resources making it a very secure system.
One of the most salient features of our Tech Hiring culture is that there is so much bullshit. Everyone knows this. Each of us contributes his share. But we tend to take the situation for granted.
Excel takes some knowledge, but anyone can make a PowerPoint. It’s like MS Paint for the office.
I worked somewhere that didn’t let you use rich text in email. Every email was just a PowerPoint with what they wanted to do in the email but could not.
Could not send a file or a image? Embed it into the PowerPoint to send... no joke.
Have a point to make, make 52 slides to say “No”.
So much of business Is just PowerPoints. Hell, “The Patriot Act” show in Netflix is just someone talking over a PowerPoint on a stage. Slightly more flashy than a TED talk.
Flycut, a very handy clipboard manager for Mac OS, has made copy pasting much more handy. It allows you to scroll back to the previously copied values (the amount of values kept in memory is configurable).
Sadly I haven't found an equivalent that does the same for Linux nor Windows forcing me to work with Mac OS 🙈
I use KDE Plasma, and it has a built-in clipboard manager.
I've used Gnome 2 and 3, Cinnamon, Openbox, LXDM, and probably others, and plasma 5 is seriously the most fantastic DE I have seen. If you haven't used it and would want to go back to Linux, do give it a try!
Perf perf.wiki.kernel.org/index.php/Tut... This thing is awesome. If you're having trouble isolating performance issues or want a quick and dirty view into what's going on RIGHT NOW on the cpu, perf is your jam.
From humble beginnings at an MSP, I've adventured through life as a sysadmin, into an engineer, and finally landed as a developer focused on fixing problems with automation.
I'd vote Factorio. Praised by its fanbase, I don't see much talk about it elsewhere. They do really impressive dev updates talking about the challenges they face with the game.
Max is a force multiplier that uses Python. He seeks to use what he has learnt as a startup founder and tech community leader to solves hard problems with innovate products or services.
systemd, life would not exist without it.
Serious mode on, Its not really under-appreciated but I think nodejs and npm(not you node_modules) changed a lot in web development, think how many things wouldn't exist without it, plus, its very easy to debug you just rm -rf node_modules && npm i, okay I'll stop.
I’m a developer with 15-years of experience in the .Net stack as well as an interest in Angular.I’m known for taking legacy projects and updating them so they can be maintainable and have new features
Alfred for macOS. It's often dismissed as just a Spotlight replacement, but it can do so much more. The workflow and snippets/text replacement features have saved me tons of time over years.
It’s used as the basis of the PS4 operating system, and tons of the networking stack have been included into various OS’s (including Windows!) since it’s very efficient and the BSD license is very liberal for inclusion into commercial products.
OpenSSH, and a few years ago OpenSSL (look where that got us).
At higher level:
Calibre (everything ebook related)
Inkscape (vectorial drawing tool)
Markdown/LaTeX/RestructuredText
Bash, after a gazillion years still defacto shell, I've tried Zsh and Fish but they are :slower and just add things I don't care about (in facto my current Bash prompt looks better than any available theme for those) and when you get used to them you ssh to some standard machine and all the muscle memory goest to hell.
All RSS/Atom related: simple, fast, non-traceable, clean.
Finally not SW per-se but a PL; C, people talk about it like a dead language even tho maybe 80% of their daily SW is written on it, your OS, Webserver, Browser, if it runs fast is probably C, I don't include C++ here because some love goes to it but still very under-appreciated. just a few years ago, with Rust we got some potential replacement for C++, we are not even sure if it'll come as performant as plain C, so we have C for maybe decades ahead and still looked down as a dead language.
Passionate about building great technology and connecting with people to create positive change. Happy to answer questions about transitioning to tech. Find me on Twitter @lounecl
Not sure if this counts, but I don't know what I did before OneTab. Actually, yes I do- I used to have windows and windows of sites I didn't want to lose, but hadn't the chance to review yet. but I love that with OneTab, I can easily collapse my open tabs into just one
Student from Germany who fell in love with coding and the tech industry after pivoting from a traditional career in banking. Currently pursuing a Bachelor's in CompSci.
Dev by profession and hobby. Not a ton of time for hobbies these days though! Mom of two young kids. Also really into dog training (agility, nose-work, advanced obedience, etc) & reading fiction. 😃
Not sure if this is under-appreciated or not but I've recently been using bear.app for organizing blog post drafts and I really love how simple it is to use and how nice it is to look at. Something about the UX just feels perfect to me.
I've been fighting with Nginx to get routing done to some Docker containers... It was extremely fragile. If your routes aren't up, it simply refuses to start. Traefik just uses dynamic configuration to find your containers, and you just need to add a few labels. No need to make a graph of which containers you need to start before you can use nginx!
Autoit is just amazing when you have to automate some stuff on windows. I developed a lot of stuff and tools with it before C#. And I have to say it : simpler and cleaner than .NET but a little bit less powerful.
Well, more like a nice gimmick, but nobody else seems to know genact, a small CLI tool to generate terminal activity. "Pretend to be busy or waiting for your computer when you should actually be doing real work!"
Already wrote a new module on my own, was a neat experience and the developer is super helpful.
RavenDB ! This easy to use (the LinQ provider is one of the most advanced in the market), easy to install for HA, "It just works" really applies here. There is a lot of things in the server or client lib that prevent you from shooting on your foot. It should be a mainstream tech.
Been using UNIX since the late 80s; Linux since the mid-90s; virtualization since the early 2000s and spent the past few years working in the cloud space.
Location
Alexandria, VA, USA
Education
B.S. Psychology from Pennsylvania State University
Microsoft Excel. Seriously.
I basically have no idea how to actually use excel 😄
I agree with you, but I still never wrapped my head around how to use this piece of software effectively...
Hard disagree. It's over appreciated.
PS, LibreOffice Calc does not solve many of those issues.
PPS, If somebody knows something between MS Excel and R to handle larger data sets to plot some graphs, please tell me.
A quick note on this: If you input
'000005234523453249587234985
into the cell it will store as a string and maintain the leading 0's. This is a pain for working with, but does make the numbers display nicely.I recently found out about this because a user was inputting numbers like this and breaking a formula later on the page 🙃
I see a lot of these as productive compromises rather than bugs, but interesting thoughts in any case. It turns out that all software is built on compromises, even Excel.
I was not a big Excel user until Joel Spolsky taught me a few things. youtu.be/0nbkaYsR94c
I started using it (and Google Sheets) more and more learning just how powerful and expressive they are.
As you said, there's lots to discover.
I don't have any training. I can't use Excel, aside from filling in values and clicking together basic equations with the GUI. Can I use Excel? Yes. Can I do anything useful with it? No.
I think I get where you are coming from here: Excel is probably easier to learn for non-technical people than other tools for data manipulation and statistics, such as R or Python. But you'd still need training to properly utilize Excel.
That is one argument I don't subscribe to at all, I'm with Michiel Hendriks on this one. Everything over ~2500 columns, without complex macros or anything, and you'll wait for it to load way longer than what feels necessary.
Aside from the fact that this doesn't say anything about the quality of the software, that's not because of Excel per se, or the lack of alternatives, but a result of Microsoft massively and successfully pushing it for decades.
Excel is also great for cleaning up data! I use it whenever I need to change formatting for a list of records- remove spaces, add commas, etc
I also love Excel's concatenate feature, which comes in handing for quickly creating arrays and objects from strings. In terms of data handling, it definitely is the best quick tool to use
Should an untrained person use a database?
This is a kind of advocacy that I hear a lot. "If you use MySQL (or any other DB) you cannot ask your secretary to manage a data base" This sounds to me like "If you use a dentist drill you cannot ask your children to cure your cavities"
At least you didn't say "MS Project". :p
What would you use instead? The problem that Project tries to solve has always struck me as a pretty tricky one. Not that I've looked in a long time, but I've not seen a better solution.
It's more the history/lore behind the project (if people working at Microsoft at the time of its initial release are to be believed).
That said, it's a horribly misused piece of software. Seems like 90% of the people that decide to use it (and not much smaller percentage of the people that should know how to use it) actually know how to use it effectively.
Just gonna leave this here pics.me.me/life-of-a-software-engi...
I know someone who can do anything in Excel, like with macros
ooo yes good one
I discovered Excel a while ago and it blew my mind :)
Everyone has different interpretations of this question, which is fun.
I'd answer this question with...
SQLite
It is installed in practically every computer, phone, etc. on earth.
git
We take for granted how epic a technology git is. It takes on some incredibly difficult problems with grace. Even if its interface is confusing or dangerous at times, its underlying mechanics are so much more sound than most software.
curl
Another one of these ever-present pieces of software that just runs on so many machines and has been getting updates and new features for decades.
I don't think git is underappreciated at all. I mean, Git{Hub, Lab}. Everyone uses it.
That's true, but I still think the shear excellence of it gets taken for granted by the average developer. The fact that we can build software in a distributed manner using this tool is freaking magical.
And github, gitlab get more of the credit. (gethub should definitely get credit to changing the way software is developed through.)
Yes, everyone uses it. And everyone uses probably about 10% of its capabilities, while thinking it's all it does (push, pull, merge, commit, maybe rebase).
I'd say that nobody outside of professional development uses it.
Git is 100% underappreciated. Everyone should have to deal with one of the older, commercial solutions to appreciate it. Working with Subversion and Rational ClearCase definitely set me up to love git.
Team foundation server, perforce, RCS... I still shudder.
+1 for SQLite, I wasn't aware about it until I used it in my recent assignment. It is very powerful storage component (remember, I am not saying database server). I'd definitely consider it as a replacement of storing data in files.
+1 for SQLite. I was doing a diff between couple files(several GBs). The Unix tools based on estimate would have taken 3-4 hrs. I loaded them into SQLite, used the MINUS operation and the job was done in 5 mins. Remarkable piece of software for crunching locally stored data.
Maybe its dumb, but I started using github to log any code I write from scratch, even just method challenges in Java(I'm still learning). Mainly as a way to keep up activity on my account, and also I can look back if I'm unsure how to do something. I also have my personal site hosted on Pages. Nice to have free hosting. I just pay for a custom domain.
I completely agree with all those, especially sqlite, its built in to android and is super easy to use and just WORKS.
Sqlite isn't really "built" into anything as there's no DBMS to speak of. Every programming language simply contains modules to interact with its files almost as a rite of passage.
I'm often in awe of Git. I never had to use Subversion or its predecessors but I still often give silent thanks to Git
For me, I've been doing a lot of Web API work lately, so Postman has been invaluable in testing my code. It lets you build client-side requests in many formats and keeps track of them all for later use.
Honorable mention: Postwoman:
Postwoman 👽 - API request builder: An open sourced, free, fast & beautiful alternative to Postman
Liyas Thomas ・ Aug 22 ・ 6 min read
Awesome!
Never heard of it, but I just went there and it looks great.
I love the name too. 😊
Thanks Ben, I learn something new everyday!
Not sure why I'd use that over Postman though 🤔
I think the advantage is that is web-based, unlike Postman which you have to install.
I've tried to use it but it can't really replace Postman, but maybe they'll eventually make it good enough. It's open source.
I see, I tried it and I definitely prefer Postman over it. Open source is a plus, but not more than function :)
Postman used to be my go to rest client, but after a friend of me suggested Insomnia I don't see myself going back.
Wow, a cure for my sleepless nights 😊
Thanks Tore! That's another one I never knew about.
Everyone is so helpful here on DEV.
What does Insomnia better than Postman?
I find Insomnia to be easier to use. I needed to read the docs once and after that everting just made sense for me.
With Postman I more frequently had to google my way through the bit more advanced features.
Thank you for the recommendation, looks amazing - will try as soon as I get to work
Definitely love insomnia. Use it pretty frequently.
Same. I find Insomnia a lot faster and easier to work with pretty much haven't touched postman since I switched over to it.
After I discovered REST Client for VSCode I stopped visiting Postman often.
I don't have to switch tabs anynore...😊🤩
Probably something like openssl. It is responsible for so much of the security provided by TLS that we take for granted on the web and is maintained by just a few people.
It is used by over two thirds of websites and a single vulnerability in it cause cause widespread damage.
There's a lot of other critical infrastructure software that falls in this category too.
Not sure how much "appreciation" openssl deserves these days. I think the general rule is you don't implement security yourself and everyone has taken that to an extreme with the particular tool.
OpenSSL was run by mainly 2 people, and only 1 could almost be fully employed. Where was big tech to support these people?
Sure, there have been a bunch of major bugs in it. Just like other SSL/TLS libraries.
So yes, OpenSSL is underappreciated.
Literally anything built free and opened source is under-appreciated. So much of the modern tech world is built on essentially "free labor".
Gotta stop one second and appreciate that fact not everything costs $, but everything does cost time.
Lots of people complain about cell signal coverage and quality. I used to too. Then I worked at Ericsson building software to help the people who engineer the cell towers to optimize their performance.
Wow, there is a lot that goes into cellular software to deal with the constraints of physics and the ever increasing expectations people have (and the increasing number of people/devices)!
Imagine you are talking to someone while driving (or on a train) and the signal needs to hand off from one tower to another at 65mph without dropping quality. Or you are trying to meet with someone near Shibuya Crossing with 2,500 other people and there are dozens of cellular antennas from all different carriers pointing in the same direction but the interference can't drop your call, or if it does, it needs to correct in less than a second so you can still hold a conversation.
My team had to deal with clusters of towers, each sending multiple terabytes of data every 15 minutes. We didn't deal with the software of the towers themselves but had software processing the data sent from them so engineers could then analyze if they should point the antenna in a slightly different direction, or change the gain of an antenna, or if neighboring antennas weren't handing off to each other properly.
The fact that we complain so much about it shows cellular software is very under-appreciated.
I worked for a company that did GSM network optimization for Telcel, in Mexico, and we offered services through Ericsson.
Definitely an extremely interesting business problem. Among other things, I was tasked with building a C# interface (which was essentially not much more than a web app wrapper) with a Google Earth plugin to show the network state on the map, locate traffic, with maps for interference, traffic, handovers, etc.
Was fun.
Very cool. That reminds me I worked with teams in Croatia and Spain who were making similar mapping functionality for an internal web tool. It used the data my team processed. My favorite map to look at was the visualization of neighbor relations
(@anras573 you should take a look at what ANR is in that link, too. I had forgotten about it in my response to you. There are many more acronyms mentioned there you can look up and get a better understanding of this stuff)
I always forget stuff like that whenever I have a bad reception 😅
Is there anywhere I can read more about this stuff? 😃
Heh, and no one likes getting the bill. My job before Ericsson was working on rating and billing software that needs to handle different kinds of events, several hundred-thousands a second, that need to be processed in accordance with the subscriber's plan so each person will be billed correctly according to text/voice/data rates that may change depending on roaming, or if the destination is a family member, or a toll-free call, etc.
This video gives a very high level overview youtu.be/iMduQ96N1F8. All the training I had was internal, on the job, so I don't know what else to send. You are probably very good at searching, but if you didn't know to search for OSS or BSS, you might not get far. When I worked at Ericsson, we got raw logs from cell towers (which aggregate multiple antennas) and batched data from OSSs which aggregate multiple towers. Both had different data that was important to keep track of.
Netlify - Just how easy it is to deploy your frontend apps with netlify for free.
git - Git is an extremely powerful utility that I'd clearly not live without.
StackOverflow - Just saved me right now after hours pulling my hair.
I'm a huge fan of Netlify's branch previews too :) Makes it so easy to show folks unfinished / unmerged work without them having to pull down and build a whole repo.
None of these are underappreciated though! Most of the programmers uses them on a day to day basis all the times..
what I mean is we really use this tools and software as a norm for free and don't really think about what goes on under the hood.
Netlify is really amazing and easy to use.
Netlify one is true. I have used netlify a lot in that regard
npm
Seriously, I think 75% of web development would be into chaos if npm suddenly stopped working. With that, a lot of IT companies.
What's actually quite scary is that npm is a private company that's still on the edge of financial collapse, and we don't have a backup plan ready.
Doesn't that make npm over appreciated?
So much work relies on it, and it is still a really volatile piece of software. I don't use it that often, but every time I need to use it, something is broken in some way, again. NPM is the Windows Me package/dependency managers.
One of my coworkers would agree with you. I'm still too new to it, though I grabbed some stuff a couple of weeks ago and kept seeing warnings about vulnerabilities and such and I was like, "OK, what the hell am I supposed to do about this?"
ls
is the most reliable piece of software I use daily!"cd" is pretty good too
Fun fact,
cd
is a shell command, and not an external program likels
, so really, it's abash
feature :D (at least on Linux).That genuinely is a fun fact!
Linux
Considering most people don't know Android is based off of it, I'd have to agree.
Windows Phone!
I sported a Lumia 630 back in the day and loved it. WP was way ahead of its time.
Homebrew, apt-get, chocolatey:
hard to imagine how much time would be wasted installing software without those
And upgrading software as well!
I hate saying this... but PowerPoint.
Excel takes some knowledge, but anyone can make a PowerPoint. It’s like MS Paint for the office.
I worked somewhere that didn’t let you use rich text in email. Every email was just a PowerPoint with what they wanted to do in the email but could not.
Could not send a file or a image? Embed it into the PowerPoint to send... no joke.
Have a point to make, make 52 slides to say “No”.
So much of business Is just PowerPoints. Hell, “The Patriot Act” show in Netflix is just someone talking over a PowerPoint on a stage. Slightly more flashy than a TED talk.
Every time I see a Powerpoint presentation, I die a little. Mind you, I can't really blame the tool for people sucking at preparing presentations.
100 percent this!
Flycut, a very handy clipboard manager for Mac OS, has made copy pasting much more handy. It allows you to scroll back to the previously copied values (the amount of values kept in memory is configurable).
Sadly I haven't found an equivalent that does the same for Linux nor Windows forcing me to work with Mac OS 🙈
I use KDE Plasma, and it has a built-in clipboard manager.
I've used Gnome 2 and 3, Cinnamon, Openbox, LXDM, and probably others, and plasma 5 is seriously the most fantastic DE I have seen. If you haven't used it and would want to go back to Linux, do give it a try!
Ditto does similar stuff on Windows
I use Alfred on macOS, which includes a clipboard manager that does that and Alfred also does a lot more. I severely underuse that software.
I Use Ditto on Windows, really handy!
I use Clipy (another clipboard manager) something like every 15 seconds. Sadly, it's only MacOS too.
Perf perf.wiki.kernel.org/index.php/Tut... This thing is awesome. If you're having trouble isolating performance issues or want a quick and dirty view into what's going on RIGHT NOW on the cpu, perf is your jam.
I'd vote Factorio. Praised by its fanbase, I don't see much talk about it elsewhere. They do really impressive dev updates talking about the challenges they face with the game.
I think it's Web browsers regardless if it's Firefox, Brave, IE or Chrome.
Web browsers is one of those most underated piece of software around.
Without it we won't be able to access Dev, Google, Stackoverflow that we need to use it as part of our daily lives.
It's becomes a topic of discussion when Web Assembly is used to talk about it
systemd
, life would not exist without it.Serious mode on, Its not really under-appreciated but I think nodejs and npm(not you
node_modules
) changed a lot in web development, think how many things wouldn't exist without it, plus, its very easy to debug you justrm -rf node_modules && npm i
, okay I'll stop.Going to get some FLAK here, but... AutoHotkey...
Love AutoHotkey
Alfred for macOS. It's often dismissed as just a Spotlight replacement, but it can do so much more. The workflow and snippets/text replacement features have saved me tons of time over years.
alfredapp.com/help/features/
🔢 Calculator - everyone uses it, but don't bother at all.
elm
A great language for writing frontend applications. Not getting anyway near the popularity of JavaScript and React, although it is a great alternativ.
Scroll Reverser, because macOS doesn't let you divorce the trackpad scrolling direction from the mouse scrolling direction.
Wish I knew about this one when I was using Mac
FreeBSD.
It’s used as the basis of the PS4 operating system, and tons of the networking stack have been included into various OS’s (including Windows!) since it’s very efficient and the BSD license is very liberal for inclusion into commercial products.
I'd say that Rails is the most under-appreciated framework @ backend... little gems need love too :(
OpenSSH, and a few years ago OpenSSL (look where that got us).
At higher level:
Finally not SW per-se but a PL; C, people talk about it like a dead language even tho maybe 80% of their daily SW is written on it, your OS, Webserver, Browser, if it runs fast is probably C, I don't include C++ here because some love goes to it but still very under-appreciated. just a few years ago, with Rust we got some potential replacement for C++, we are not even sure if it'll come as performant as plain C, so we have C for maybe decades ahead and still looked down as a dead language.
Not sure if this counts, but I don't know what I did before OneTab. Actually, yes I do- I used to have windows and windows of sites I didn't want to lose, but hadn't the chance to review yet. but I love that with OneTab, I can easily collapse my open tabs into just one
WebRTC
It's the reason why video conferences and screen sharing apps are no longer awful.
I work a lot with Python, so I'm also going to mention:
pywinauto
Paramiko
PyInstaller
Figma, because they make it so easy to build a prototype or mock-up for free!
Not sure if this is under-appreciated or not but I've recently been using bear.app for organizing blog post drafts and I really love how simple it is to use and how nice it is to look at. Something about the UX just feels perfect to me.
Surprised no one mentioned Traefik yet.
I've been fighting with Nginx to get routing done to some Docker containers... It was extremely fragile. If your routes aren't up, it simply refuses to start. Traefik just uses dynamic configuration to find your containers, and you just need to add a few labels. No need to make a graph of which containers you need to start before you can use nginx!
Autoit is just amazing when you have to automate some stuff on windows. I developed a lot of stuff and tools with it before C#. And I have to say it : simpler and cleaner than .NET but a little bit less powerful.
Well, more like a nice gimmick, but nobody else seems to know genact, a small CLI tool to generate terminal activity. "Pretend to be busy or waiting for your computer when you should actually be doing real work!"
Already wrote a new module on my own, was a neat experience and the developer is super helpful.
github.com/svenstaro/genact
RavenDB ! This easy to use (the LinQ provider is one of the most advanced in the market), easy to install for HA, "It just works" really applies here. There is a lot of things in the server or client lib that prevent you from shooting on your foot. It should be a mainstream tech.
Nextcloud, for providing a self hosted, open source and federalized alternative to Apples and Google's cloud consumer products.
Adblock!!!!
Working against all odds, newsfeed eradicator has saved many an hour of me scrolling through fb before it became irrelevant
RunCat, the cutest way to check CPU usage on mac.
Docker
Snipping Tool....Lol
Encryption libraries.
Reasonml. Type safe, fast, looks like javascript (but it's not), compiles to javascript.
Bash, probably.
Like damn once you learn it, it makes life soooo much easier
Bash/zsh scripts.
Non-trivial algorithms that we are so far removed from that are at the foundation of so much that we do:
Git, hands down.
IMO Linux is often taken for granted.
Microsoft Access
You can have a database like postgress for asp without sqlserver. besides you can have a full crm inside.
I would like to take this chance to give thanks to BBCeditor for helping me make my forum posts pretty 💞
AdonisJS