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 - "tmp"
-
This fucktard of a 'stick that facility management up your arse' manager.
He insisted 'no cooling required. Trust me'.
While we insisted 'how dare you to asume our servers temperatures'!
We moved our servers to a new /tmp/office/ yesterday. Was quite fun, until we saw this...
Doorhandle is hot as fuck, 50 degrees air temperature, all servers in heat error state. Thank you, you damn fucktards! Take this cactus 🌵 and stick it up your arse!!
Can't work like that.13 -
I absolutely hate when people name local variables something like temp or tmp. I was working on a project with a guy who did this with almost every local variable and it was really confusing to have like 7 variables with the same name in the same class.
Please use informative names!7 -
Fond this gem in teams code;
Var temp = "",
Var tmp = "",
Var tmp2 = "",
Var tmpIDK = "";
Asked the creator only 4 hours after the commit what his code does. The answer; I have no idea, but it works, don't touch it.2 -
My Sunday Morning until afternoon. FML. So I was experiencing nightly reboots of my home server for three days now. Always at 3:12am strange thing. Sunday morning (10am ca) I thought I'd investigate because the reboots affected my backups as well. All the logs and the security mails said was that some processes received signal 11. Strange. Checked the periodics tasks and executed every task manually. Nothing special. Strange. Checked smart status for all disks. Two disks where having CRC errors. Not many but a couple. Oh well. Changing sata cables again 🙄. But those CRC errors cannot be the reason for the reboots at precisely the same time each night. I noticed that all my zpools got scrubbed except my root-pool which hasn't been scrubbed since the error first occured. Well, let's do it by hand: zpool scrub zroot....Freeze. dafuq. Walked over to the server and resetted. Waited 10 minutes. System not up yet. Fuuu...that was when I first guessed that Sunday won't be that sunny after all. Connected monitor. Reset. Black screen?!?! Disconnected all disks aso. Reset. Black screen. Oh c'moooon! CMOS reset. Black screen. Sigh. CMOS reset with a 5 minute battery removal. And new sata cable just in cable. Yes, boots again. Mood lightened... Now the system segfaults when importing zroot. Good damnit. Pulled out the FreeBSD bootstick. zpool import -R /tmp zroot...segfault. reboot. Read-only zroot import. Manually triggering checksum test with the zdb command. "Invalid blckptr type". Deep breath now. Destroyed pool, recreated it. Zfs send/recv from backup. Some more config. Reboot. Boots yeah ... Doesn't find files??? Reboot. Other error? Undefined symbols???? Now I need another coffee. Maybe I did something wrong during recovery? Not very likely but let's do it again...recover-recover. different but same horrible errors. What in the name...? Pulled out a really old disk. Put it in, boots fine. So it must be the disks. Walked around the house and searched for some new disks for a new 2 disk zfs root mirror to replace the obviously broken disks. Found some new ones even. Recovery boot, minimal FreeBSD Install for bootloader aso. Deleted and recreated zroot, zfs send/recv from backup. Set bootfs attribute, reboot........
It works again. Fuckit, now it is 6pm, I still haven't showered. Put both disks through extensive tests and checked every single block. These disks aren't faulty. But for some reason they froze my system in a way so that I had to reset my BIOS and they had really low level data errors....? I Wonder if those disks have a firmware problem? So that was most of my Sunday. Nice, isn't it? But hey: calm sea won't make a good sailor, right?3 -
“Overhearing powers of the Fullstack dev”
We have an internal control panel (BEEP) to manage our dev Tomcat instances. The other day, with one of my muggle friend, I was trying to restart an instance. There’s a checkbox to clean the host tmp files and directories, ingeniously named as - Purge cache.
Innocent Me (to my muggle friend): bro would Purge cache delete the application log files?
__(Fullstack dev overhearing us)__
Muggle friend: Purge ca... (gets interrupted my the Fullstack dev)
Fullstack dev: so the thing is ... it’s like ... (gotta be consistent with the opening) what “npm purge” does is it deletes the files which are not being used.
Confused Muggle friend: bro it’s a BEEP option to clean the tmp dirs.
Fullstack dev: oh I thought you guys were talking about “npm purge”
Angry muggle friend: then WHY THE FUCK did you answer if you didn’t know [...] the fuck we were talking about.
Calm fullstack dev: FYI. Might help you someday.
Deeply-hurt Me: (what the fuck is “npm purge”). Hey man do you mean “npm prune”? Because they don’t have an npm purge. And what do you mean by “it deletes the files which are not being used”?
Confident Fullstack dev: NO
Me: (cries in npm)
More to come!3 -
Github 101 (many of these things pertain to other places, but Github is what I'll focus on)
- Even the best still get their shit closed - PRs, issues, whatever. It's a part of the process; learn from it and move on.
- Not every maintainer is nice. Not every maintainer wants X feature. Not every maintainer will give you the time of day. You will never change this, so don't take it personally.
- Asking questions is okay. The trackers aren't just for bug reports/feature requests/PRs. Some maintainers will point you toward StackOverflow but that's usually code for "I don't have time to help you", not "you did something wrong".
- If you open an issue (or ask a question) and it receives a response and then it's closed, don't be upset - that's just how that works. An open issue means something actionable can still happen. If your question has been answered or issue has been resolved, the issue being closed helps maintainers keep things un-cluttered. It's not a middle finger to the face.
- Further, on especially noisy or popular repositories, locking the issue might happen when it's closed. Again, while it might feel like it, it's not a middle finger. It just prevents certain types of wrongdoing from the less... courteous or common-sense-having users.
- Never assume anything about who you're talking to, ever. Even recently, I made this mistake when correcting someone about calling what I thought was "powerpc" just "power". I told them "hey, it's called powerpc by the way" and they (kindly) let me know it's "power" and why, and also that they're on the Power team. Needless to say, they had the authority in that situation. Some people aren't as nice, but the best way to avoid heated discussion is....
- ... don't assume malice. Often I've come across what I perceived to be a rude or pushy comment. Sometimes, it feels as though the person is demanding something. As a native English speaker, I naturally tried to read between the lines as English speakers love to tuck away hidden meanings and emotions into finely crafted sentences. However, in many cases, it turns out that the other person didn't speak English well enough at all and that the easiest and most accurate way for them to convey something was bluntly and directly in English (since, of course, that's the easiest way). Cultures differ, priorities differ, patience tolerances differ. We're all people after all - so don't assume someone is being mean or is trying to start a fight. Insinuating such might actually make things worse.
- Please, PLEASE, search issues first before you open a new one. Explaining why one of my packages will not be re-written as an ESM module is almost muscle memory at this point.
- If you put in the effort, so will I (as a maintainer). Oftentimes, when you're opening an issue on a repository, the owner hasn't looked at the code in a while. If you give them a lot of hints as to how to solve a problem or answer your question, you're going to make them super, duper happy. Provide stack traces, reproduction cases, links to the source code - even open a PR if you can. I can respond to issues and approve PRs from anywhere, but can't always investigate an issue on a computer as readily. This is especially true when filing bugs - if you don't help me solve it, it simply won't be solved.
- [warning: controversial] Emojis dillute your content. It's not often I see it, but sometimes I see someone use emojis every few words to "accent" the word before it. It's annoying, counterproductive, and makes you look like an idiot. It also makes me want to help you way less.
- Github's code search is awful. If you're really looking for something, clone (--depth=1) the repository into /tmp or something and [rip]grep it yourself. Believe me, it will save you time looking for things that clearly exist but don't show up in the search results (or is buried behind an ocean of test files).
- Thanking a maintainer goes a very long way in making connections, especially when you're interacting somewhat heavily with a repository. It almost never happens and having talked with several very famous OSSers about this in the past it really makes our week when it happens. If you ever feel as though you're being noisy or anxious about interacting with a repository, remember that ending your comment with a quick "btw thanks for a cool repo, it's really helpful" always sets things off on a Good Note.
- If you open an issue or a PR, don't close it if it doesn't receive attention. It's really annoying, causes ambiguity in licensing, and doesn't solve anything. It also makes you look overdramatic. OSS is by and large supported by peoples' free time. Life gets in the way a LOT, especially right now, so it's not unusual for an issue (or even a PR) to go untouched for a few weeks, months, or (in some cases) a year or so. If it's urgent, fork :)
I'll leave it at that. I hear about a lot of people too anxious to contribute or interact on Github, but it really isn't so bad!4 -
In today's episode of kidding on SystemD, we have a surprise guest star appearance - Apache Foundation HTTPD server, or as we in the Debian ecosystem call it, the Apache webserver!
So, imagine a situation like this - Its friday afternoon, you have just migrated a bunch of web domains under a new, up to date, system. Everything works just fine, until... You try to generate SSL certificates from Lets Encrypt.
Such a mundane task, done more than a thousand times already... Yet... No matter what you do, nothing works. Apache just returns a HTTP status code 403 - Forbidden.
Of course, what many folk would think of first when it came to a 403 error is - Ooooh, a permission issue somewhere in the directory structure!
So you check it... And re-check it to make sure... And even switch over to the user the webserver runs under, yet... You can access the challenge just fine, what the hell!
So you go deeper... And enable the most verbose level of logging apache is capable of - Trace8. That tells you... Not a whole lot more... Apparently, the webserver was unable to find file specified? But... Its right there, you can see it!
So you go another step deeper and start tracing the process' system calls to see exactly where it calls stat/lstat on the file, and you see that it... Calls lstat and... It... Returns -1? What the hell#2!
So, you compile a custom binary that calls lstat on the first argument given and prints out everything it returns... And... It works fine!
Until now, I chose to omit one important detail that might have given away the issue to the more knowledgeable right away. Our webservers have the URL /.well-known/acme-challenge/, used for ACME challenges, aliased somewhere else on the filesystem - To /tmp/challenges.
See the issue already?
Some *bleep* over at the Debian Package Maintainer group decided that Apache could save very sensitive data into /tmp, so, it would be for the best if they changed something that worked for decades, and enabled a SystemD service unit option "PrivateTmp" for the webserver, by default.
What it does is that, anytime a process started with this option enabled writes to /tmp/*, the call gets hijacked or something, and actually makes the write to a private /tmp/something/tmp/ directory, where something... Appeared as a completely random name, with the "apache2.service" glued at the end.
That was also the only reason why I managed fix this issue - On the umpteenth time of checking the directory structure, I noticed a "systemd-private-foobarbas-apache2.service-cookie42" directory there... That contained nothing but a "tmp" directory with 777 as its permission, owned by the process' user and group.
Overriding that unit file option finally fixed the issue completely.
I have just one question - Why? Why change something that worked for decades? I understand that, in case you save something into /tmp, it may be read by 3rd parties or programs, but I am of the opinion that, if you did that, its only and only your fault if you wrote sensitive data into the temporary directory.
And as far as I am aware, by default, Apache does not actually write anything even remotely sensitive into /tmp, so...
Why. WHY!
I wasted 4 hours of my life debugging this! Only to find out its just another SystemD-enabled "feature" now!
And as much as I love kidding on SystemD, this time, I see it more as a fault of the package maintainers, because... I found no default apache2/httpd service file in the apache repo mirror... So...8 -
There's one thing I hate about the new year. Everyone assumes it's the best time to do some cleanup, some maintenance. As the year starts fresh - everyone should start fresh, right?
NOT!
No, Hetzner, you don't need to restart my servers on Dec 26th.
No, local VPS providers, you don't need to clean-up all my /tmp/ files for me on Dec 29th, leaving me in the dark and unaware I have to restart my apps.
That's just a dick move. Your intentions might be alright, but the consequences... Damn you!3 -
When company gave me a SSH I am a noob I have a filezilla what I do is delete all temp files and clear log files
Because the log file size goes 1gb After next day all are looking weird
Senior developer:wtf are you doing yesterday
Me: delete all the tmp files and log files 😂😂20 -
I'm trying to deploy an Azure Function via Visual Studio. VS gives me this error:
Publish has encountered an error.
Publish has encountered an error. We were unable to determine the cause of the error. Check the output log for more details.
A diagnostic log has been written to the following location:
"C:\Users\myusername\AppData\Local\Temp\tmp16F8.tmp"
Let's check the log then!
"Microsoft.WebTools.Shared.Exceptions.WebToolsException: Publish has encountered an error. We were unable to determine the cause of the error. Check the output log for more details. "
Fucking piece of crap1 -
techie 1 : hey, can you give me access to X?
techie 2 : the credentials should be in the password manager repository
t1 : oh, but I don't have access to the password manager
t2 : I see your key A1B2C3D4 listed in the recipients of the file
t1 : but I lost that key :(
t2 : okay, give me your new key then.
t1 : I have my personal key uploaded to my server
t1 : can you try fetching it?
t1 : it should work with web key directory ( WKD )
t2 : okay
t2 : no record according to https://keyserver.ubuntu.com
t1 : the keyserver is personal-domain.com
t1 : try this `gpg --no-default-keyring --keyring /tmp/gpg-$$ --auto-key-locate clear,wkd --locate-keys username@personal-domain.com`
t2 : that didn't work. apparently some problem with my dirmgr `Looking for drmgr ...` and it quit
t1 : do you have `dirmngr` installed?
t2 : I have it installed `dirmngr is already the newest version (2.2.27-2)`
t2 : `gpg: waiting for the dirmngr to come up ... (5)` . this is the problem. I guess
t1 : maybe your gpg agent is stuck between states.
t1 : I don't recall the command to restart the GPG agent, but restarting the agent should probably fix it.
t1 : `gpg-connect-agent reloadagent /bye`
source : https://superuser.com/a/1183544
t1 : *uploads ASCII-armored key file*
t1 : but please don't use this permanently; this is a temporary key
t2 : ok
t2 : *uploads signed password file*
t1 : thanks
t2 : cool
*5 minutes later*
t1 : hey, I have forgotten the password to the key I sent you :(
t2 : okay
...
t2 : fall back to SSH public key encryption?
t1 : is that even possible?
t2 : Stack Overflow says its possible
t1 : * does a web search too *
t1 : source?
t2 : https://superuser.com/questions/...
t2 : lets try it out
t1 : okay
t2 : is this your key? *sends link to gitlab.com/username.keys*
t1 : yes, please use the ED25519 key.
t1 : the second one is my old 4096-bit RSA key...
t1 : which I lost
...
t1 : wait, you can't use the ED25519 key
t2 : why not?
t1 : apparently, ED25519 key is not supported
t1 : I was trying out the steps from the answer and I hit this error :
`do_convert_to_pkcs8: unsupported key type ED25519`
t2 : :facepalm: now what
t1 : :shrug:
...
t1 : *uploads ASCII-armored key file*
t1 : I'm sure of the password for this key
t1 : I use it everyday
t2 : *uploads signed password file*
*1 minute later*
t1 : finally... I have decrypted the file and gotten the password.
t1 : now attempting to login
t1 : I'm in!
...
t2 : I think this should be in an XKCD joke
t2 : Two tech guys sharing password.
t1 : I know a better place for it - devRant.com
t1 : if you haven't been there before; don't go there now.
t1 : go on a Friday evening; by the time you get out of it, it'll be Monday.
t1 : and you'll thank me for a _weekend well spent_
t2 : hehe.. okay.8 -
I use /tmp for random stuff. So if i forget it, it gets deleted when I shut down my PC.
Its really effective against data cluttering.
But NEVER use /tmp for code testing or even new projects!1 -
// Task: add one to the input number
// Sane people:
// print(int(input())+1)
// Me:
n = [*(reversed(bin(int(input()))[2:]))]
tmp = ""
for i in range(len(n)):
tmp = n[i]
tmp = "1" if tmp == "0" else "0"
n[i] = tmp
if tmp == "1":break
if tmp == "0":n+=["1"]
n = "".join(reversed(n))
n = int(n,2)
print(n)7 -
Never call a variable 'r' while debugging in python console.
I was trying to fix my code but for some reason the program didn't follow the code flow. I hate it when it happens because you can't pinpoint the source of the problem. I restarted the kernel, nothing, then I rebooted the IDE, nothing. The code behaved weirdly, the only thing I was doing was assigning a value to a temp variable called 'r' and then displaying it. The console kept telling me "--Return--", I didn't understand... Why, my old friend, are you telling me you're returning? Then I changed the variable name to old 'tmp' and it all worked. I finally realized that 'r' is a pdb command... I was angry at the console for obeying my own order... I'm sorry console1 -
when you see this in the code of a senior programer
if(0){
all sort of things;
}
or just like
if($var == $tmp){
do nothing
}
if i would have done this in college i wouldnt be programming today...2 -
This literally happened in my current team, and I'm not even an experienced dev yet.
Incident happened like this :
Our team is working on a RCP based on eclipse plugins, which has a headless mode and a GUI mode. Now, in the GUI mode, my manager cum architect thought there are no need of user log files (long story) because the user can see the info on screen, whereas in the headless mode, she wanted me to print the logs onto the console and a log file as well.
Now it just so happened that our team had got a recent addition as a replacement to our lead developer (she left the company) who claimed she had 3 years of expertise and a masters degree, and she was assigned a task. The task was to format a custom file we were generating out of the product (basically dumping info in a file) in a human-readable format. Miss new-addition-masters-degree decided it would be a very good idea to redirect the standard java output stream to a file output stream ( which she used for generating the formatted file ) but somehow never realized that she needed to reset the output stream back to standard output.
Consequences were devastating. I wrote the logic for the logger ( yes, apparently any available logging mechanism won't do it, again, long story ) and had it printing to a file in tmp directory. The logs seemed to be working fine initially but after a few logs, specifically from the point where the formatter started working, all the logs got printed in the formatted file. And this file was supposed to be used by our clients to develop something on top of it. Naturally, I got the heat of it and then naturally, worried and nervous and curious and in a frenzied state of mind, I started debugging.
When I got to the actual fault, I seriously could not decide whether to cry or laugh or call up miss masters and scream at her. I decided to ask her about what the hell she had written and her answer was most of it was written by the developer she replaced, so she didn't know it would cause this much problem. Anyway, I fixed the leak after that and averted the catastrophe.
And that, fellow devs, is the story of how I solved a crisis in my first year at corporate.1 -
WHY THE FUCK IS THE UPGRADE UNZIP DIR HARDCODED IN WORDPRESS TO A LOCATION IN THE WEBROOT????????? It should be /tmp.... I always knew wordpress devs were... special...3
-
Long story short,
I made a repository on GitHub containing all the necessary files to build network-card specific firmware that the developer Mellanox does not suply openly to the general public anymore.
Can they (Mellanox) do something to me for that? 😨
And should i pick a license for that repo?
The files were grabbed from either an old russian ftp who grabbed them from the mellanox page years ago while they were available.
Or from some programs appdata tmp folder where they magically appeared during installation.
The files are 2 different kinds,
Either a core firmware textfile containing encoded binary 😵, or
Adapter specific config files that could also be dumped from the adapter card itself.
In total, mellanox provides version compiled 2.9.1000,
I obtained "sources" for
2.9.1200
2.9.8350 and
2.10.0720
Which are massively better and needed for certain features and functionality. Like building in PXE.
Thanks1 -
idk why, but why focus so much on internal stuff that never will be public...this is also my favorite quote1
-
What's that? You committed the tmp/dist/cache field for something only YOU run locally and asked me to review it. Just GET OUT.1
-
int main() {
char age = 0x14;
char tmp = 1;
while ( age & tmp ) {
age &= ~tmp;
tmp <<= 1;
}
return age |= tmp;
}1 -
Automate this!
I'm an aspiring coder working some chappy administrator job just to pay the bills for now. My boss found out that I may actually be more computer literate than I let on.
Boss: "I want you to make X happen automatically if I click here on this spreadsheet"
Me "X!? That means processing data from 4 different spreadsheets that aren't consistently named and scraping comparison info from the fronted of the Web cms we're using"
Boss: "if you say so.. Can you do it?"
Me: "maybe.. Can I install python?"
Boss: "No..."
Me: "what about node.js or ruby?"
Boss: "no.. I don't know what you're talking about but you're not installing anything, just get it done"
Me: "Errm Ok.."
So here I am now, way over my head loving the fact that I'm unofficially a Dev and coding my first something in Powershell and vb that will be used in business :)
Sucks that I still have to keep my regular work on target whilst doing this though!2 -
Just when I thought js/ts is a mess with its npm, I ran into GO
$ xk6 build --with gitlab.com/<...>
smth wrong with module name
*fixes module name*
$ git push
$ xk6 build --with gitlab.com/<...>
smth wrong with module name
*go pulls initial commit instead of the last one*
$ go clean [or wtv it's called]
$ xk6 build --with gitlab.com/<...>
smth wrong with module name
*go pulls initial commit instead of the last one*
$ cd /tmp
$ xk6 build --with gitlab.com/<...>
OK
oh well... I guess this is how it's gonna be6 -
How difficult is it to write an installation script?! Suddenly have dozens of computers with just a few MB free space...Reason: 150 GB tmp-files (which turns out to be log files), containing "Can't replace file, file in use" a gazillion times until the disk got full!1
-
Here I try to install a package locally. If the package doesn't install, I try to install every single word of the output from the failed install. Maybe one of those words will install an unmet dependency.
function install() {
need=$1
apt-get source $need && cd $need
c="./configure --prefix=$HOME/tmp"
m="make && make install"
eval set $($c)$($m)
if [ -x "$(command -v $need)" ]
cd ..
return 0
fi
for i
do install $i
done
}2 -
Be developing a react native app with create-react-native-app.
Almost done, time to eject! Let's install Android studio. 6 GiB free on /tmp, that should work. yaourt - S android-studio
Oh no! Nit enough space on tmp! Ffs and then that is without the Android sdk!4 -
Aaaaaaaarg GCC! Stop caching my failures. I do correct my code, stop pulling the old copy from /tmp you bloated piece of C3
-
Made a syntax error in my sudoers file and somehow deleted the .tmp file so I don't have permission to change my sudoers file.3
-
VSCode doesn't (seem to) have the option to target specific sourcemaps, and ParcelJS doesn't have the option to specify the names of sourcemaps.
This fucks me over pretty hard since vscodes debugger expects the sourcemap to end in .js.map, but parcel gives me just .map. If the sourcemap doesn't end with .js.map vscode will just open the debug control panel pop up thing, wait a few seconds, and then close it again.
This has given me a new permanent temporary hack :v
https://github.com/inabahare/lewd2/...2 -
Quick Plesk config question...
Been getting open_basedir() notices in the WordPress logs, and frankly it's flooding the log right now. Sample below:
[24-Feb-2019 07:05:19 UTC] PHP Warning: file_exists(): open_basedir restriction in effect. File(/var/www/vhosts/webspacedomain.com/SiteInstallDirectory/wp-content/db.php) is not within the allowed path(s): (/var/www/vhosts/webspacedomain.com/:/tmp/) in /var/www/vhosts/webspacedomain.com/SiteInstallDirectory/wp-includes/load.php on line 397
Checking the settings for open_basedir in the domain's PHP settings, it's currently set to the following default value:
{WEBSPACEROOT}{/}{:}{TMP}{/}
By my read, that **should** be granting permission to the directory. I just checked it against the setting on the dev server (which doesn't report this error), and it's configured in the same manner. Only difference between Dev environment and this one is that the one in Dev is in vhosts/webspacedomain.net/DEV instead of just vhosts/webspacedomain.net
Is there something I'm missing here?4 -
The crazy shenanigans you can do with C++ standard libs are fascinating.
Like implementig multithreading with just a foreach, and bindings which can make member function pointers to simple function pointers, and placeholders in bindings. Also lambda functions are cool.
Something between the lines:
my_crazy_class *tmp = new my_crazy_class(...);
std::vector<type> my_array = .....;
std::for_each(std::execution::par,my_array.begin(),my_array.end(),
[&](type in){
auto fn = std::bind( &my_crazy_class::my_crazy_fnc,*tmp,_1,random_static_value);
return fn(in);
});
ps:
It's pretty much pseudocode, and please don't do things like this, it's bad for your mental health.
pps:
I need to learn how to use this tools wisely. -
Top Tip: When writing 200 line functions why not have a string variable named 'tmp' that changes it's value multiple times throughout?2
-
Android studio is BIG PILE OF GARBAGE.
I waste my second day to install a fuckin emulator because that retarded thing tries to unzip it in fuckin /tmp, which it cant because it gets filled and then it fails.
It doesnt even consider my overwrite options to use a different /tmp directory
AH
FUCK
YOU -
"Waiting for someone to free some space" : the strangest Mysql error message I never saw.
I had the longest Saturnady in a year.
Than I moved the Mysql temporary dir in a different location, a bigger device with the config option tmpdir = /var/www/webappfiles/tmp -
Tries to automate login with vb using I.E...
Gets stuck because login page is a hive of nested iframes with deep nested tags without defined names
FML -
Thought i'd try using VSCode.. initialized folder for git... and then proceeded to delete all my nodeschool work that i'd done over the past year... ARAGH!2
-
How do you handle error checking? I always feel sad after I add error checking to a code that was beautifully simple and legible before.
It still remains so but instead of each line meaning something it becomes if( call() == -1 ) return -1; or handleError() or whatever.
Same with try catch if the language supports it.
It's awful to look at.
So awful I end up evading it forever.
"Malloc can't fail right? I mean it's theoetically possible but like nah", "File open? I'm not gonna try catch that! It's a tmp file only my program uses come oooon", all these seemingly reasonable arguments cross my head and makes it hard to check the frigging errors. But then I go to sleep and I KNOW my program is not complete. It's intentionally vulnerable. Fuck.
How do you do it? Is there a magic technique or one has to reach dev nirvana to realise certain ugliness and cluttering is necessary for the greater good sometimes and no design pattern or paradigm can make it clean and complete?15 -
Wtf do some tests before releasing your software! Changing /tmp permissions to 600 is not supposed to happen you i***t!4
-
AWS... I love ya, but seriously, what the fuck. Why is it that when I script to write a file to /tmp, you choose some other location...
Where the hell did the file go?!3 -
Someone asked me to check on his Wordpress site. Can't upload media. 'Failure to write to disk' Updating fails too. Directory and file permissions are ok. Server has enough space. Cleared tmp. Any more ideas?8
-
Caching is cool. But damn it! When it comes to testing it's just a hell of a pain to search and disable every caching found to ensure the result is repeatable.
npm cache, /tmp, ~/.cache, and more, and more!