|
Tell me about Email; what is the history? Hasn't almost the same protocol been used for decades? Is marking a message read/unread part of the protocol?
|
# ? Apr 19, 2017 21:58 |
|
|
# ? May 15, 2024 04:59 |
LP0 ON FIRE posted:Tell me about Email; what is the history? Hasn't almost the same protocol been used for decades? Is marking a message read/unread part of the protocol? Modern Internet E-mail is composed of primarily two standards: SMTP (Simple Mail Transfer Protocol) and MIME (Multipurpose Internet Mail Extensions). SMTP is how messages get transferred from server to server. MIME is the data format of messages. Originally there was just SMTP, but eventually MIME evolved on top, as a standardized method of doing attachments and having alternate formats for primary message contents. (E.g. having a plain-text and a HTML version of the same message in a single package.) What happens after a message has been delivered to its destination system is up to the software on that system. The software could deliver to a local mbox file where the user reads it via a commandline tool and just discards it afterwards. It could be delivered to an mbox file which the user then downloads via POP3. It could be delivered to a Maildir structure and the user accesses it via IMAP. It could be stored in an Exchange database and the user accesses it via ActiveSync. Or it could be stored in another proprietary database and accessed via a webmail client. However, when the message is delivered to the destination system, the source is not involved at all. "Message has been read" is not a concept Internet E-mail has at all, just something client software invents for the convenience of users. In the view of the sending system, the only available status is "message has probably been delivered."
|
|
# ? Apr 19, 2017 22:11 |
|
nielsm posted:However, when the message is delivered to the destination system, the source is not involved at all. "Message has been read" is not a concept Internet E-mail has at all, just something client software invents for the convenience of users. In the view of the sending system, the only available status is "message has probably been delivered." Some clients supported (and may still support?) the ability to send a "user has seen this message" receipt back to the sender, but it was always a proprietary hack and is very much not dominant in this day and age. The modern workaround is to send an HTML email that embeds a 1x1 transparent pixel image served from your server using a custom request string, which you can then cross-reference with the emails you send to see who's actually opening their emails.
|
# ? Apr 19, 2017 22:28 |
|
TooMuchAbstraction posted:The modern workaround is to send an HTML email that embeds a 1x1 transparent pixel image served from your server using a custom request string, which you can then cross-reference with the emails you send to see who's actually opening their emails.
|
# ? Apr 19, 2017 22:45 |
|
JawnV6 posted:Gmail's been actively trying to prevent this since 2013 or so? Well, good luck to them. Sounds like an arms race similar to the one waged against spammers that they eventually won. ...man. Remember when effective spam filters didn't exist? Those days sucked.
|
# ? Apr 19, 2017 22:47 |
|
Gmail now proxies the images, specifically to defeat bullshit tracking stuff. https://support.google.com/mail/answer/145919?p=display_images&visit_id=1-636282355858556077-2053362118&rd=1 It mostly works.
|
# ? Apr 19, 2017 22:54 |
|
5TonsOfFlax posted:Gmail now proxies the images, specifically to defeat bullshit tracking stuff. https://support.google.com/mail/answer/145919?p=display_images&visit_id=1-636282355858556077-2053362118&rd=1 Not entirely. They wimped out on doing this properly, probably because too many poo poo email marketers (e.g. Constant Contact users) were up in arms about it. Google doesn't pre-load the images, but only proxies them on user load so tracking references still let the marketer know you opened it. What they should've done is cache all external image links which would make the requests to the marketers a worthless deluge of Google's requests all at the same time regardless of what the user does. I'm not entirely surprised an ad company doesn't put users first.
|
# ? Apr 20, 2017 01:48 |
|
I noticed gmail proxying images earlier this week. I assume its use is to prevent people from fetching IPs, user agents, etc. Of course it still indicates that the user loaded it, it's just less identifying information.
|
# ? Apr 20, 2017 12:00 |
|
nielsm posted:Modern Internet E-mail is composed of primarily two standards: SMTP (Simple Mail Transfer Protocol) and MIME (Multipurpose Internet Mail Extensions). This is super fascinating and high quality; thank you. Feels like I'm reading a book. The 1x1 image with the request and the Google thing to prevent it is blowing my mind too. Good to be aware a little more what's going on, instead of blindly using PHP to automatically generate emails for people. LP0 ON FIRE fucked around with this message at 20:08 on Apr 20, 2017 |
# ? Apr 20, 2017 20:06 |
|
LP0 ON FIRE posted:The 1x1 image with the request and the Google thing to prevent it is blowing my mind too. Good to be aware a little more what's going on, instead of blindly using PHP to automatically generate emails for people. It's not just email, either. Tracking pixels (as they're called) are used to track web browsing, too
|
# ? Apr 20, 2017 20:30 |
I want to learn a bit of pascal so I can dive into the DOOMRL source code. What is a good way to learn the language? I know Python very well and a decent amount of Ruby and MATLAB. I've also poked around in Java, JS, and C.
|
|
# ? Apr 20, 2017 21:30 |
|
Eela6 posted:I want to learn a bit of pascal so I can dive into the DOOMRL source code. What is a good way to learn the language? I know Python very well and a decent amount of Ruby and MATLAB. I've also poked around in Java, JS, and C. If you just want to learn something like Turbo Pascal, any used bookstore will probably pay you to take a Pascal textbook or 10 off of their hands.
|
# ? Apr 20, 2017 21:45 |
|
dupersaurus posted:It's not just email, either. Tracking pixels (as they're called) are used to track web browsing, too That's nuts, and I'll probably try playing around with this.
|
# ? Apr 20, 2017 22:22 |
|
dougdrums posted:I noticed gmail proxying images earlier this week. I assume its use is to prevent people from fetching IPs, user agents, etc. Of course it still indicates that the user loaded it, it's just less identifying information.
|
# ? Apr 20, 2017 22:28 |
|
I work at a low-budget community college, have no coding/tech background, and need to figure out how to make a fillable pdf form that can populate(?) a searchable database. How should I start jury-rigging this?
|
# ? Apr 20, 2017 23:31 |
|
El Kabong posted:I work at a low-budget community college, have no coding/tech background, and need to figure out how to make a fillable pdf form that can populate(?) a searchable database. Edit: You should be aware that this may be more effort than using something like google forms though. mystes fucked around with this message at 23:44 on Apr 20, 2017 |
# ? Apr 20, 2017 23:41 |
|
mystes posted:If you don't have the full version of acrobat, then use LibreOffice to make the form and then pdftk or something to extract the data from the filled forms I have the full version. Still use pdftk?
|
# ? Apr 20, 2017 23:44 |
|
El Kabong posted:I have the full version. Still use pdftk? If you want to set up some sort of script to do it automatically it will probably be easier to use pdftk or something like that.
|
# ? Apr 20, 2017 23:48 |
|
What's the deal with file extensions? I'm writing a function to rename a path if a file already exists, stick a _1 on the end of the filename or whatever. I was fighting with Python's pathlib (that only has a method to get the filename without the last suffix) and then I tried copying a file on Windows, and it acts the same code:
|
# ? Apr 21, 2017 20:10 |
Yes, extensions are just a convention to consider whatever follows the last period in the name as a classification. Except in original DOS 8.3 world where the period isn't stored, and instead the name is put into a fixed-width 11 byte field, and the final three bytes are printed after a period. And, if you make a file base name shorter than 8 bytes, it pads the rest with spaces. All in all, file name storage, wildcard matching, and paths in general, were weird in DOS. The case of archivers and file compression software from UNIX land is a bit of a special case. The original function of compression software is to work with a single file, and entering "gzip foo.bar" will cause it to create the file "foo.bar.gz" and then delete the original "foo.bar" file! And similarly gunzip would re-create the name just by stripping the .gz extension off, and (of course) delete the compressed input file after writing the decompressed output. So .tar.gz literally does mean a tar file compressed with gzip. It is just a gzipped file, which then happens to have an original name that ends in .tar, but it gets treated as a special case most of the time. I think the case only happens with specifically tar files, so if you want to generalize the special case, look for filenames ending with .tar before the common extension part. nielsm fucked around with this message at 20:32 on Apr 21, 2017 |
|
# ? Apr 21, 2017 20:30 |
|
Yeah I'm not messing with tar files, that was just the example that came to mind of a meaningful (?) chain of extensions. I was wondering if that happened more generally because if you strip that .gz ending you get some garbage, and it seems like a Bad Thing But of course some people add periods in filenames anyway in which case it makes sense to add a suffix to the part before the last period :starecat: So is doing that the sort of accepted best practice? And it's only really tar.gz that anyone might care about otherwise?
|
# ? Apr 21, 2017 20:44 |
Yep, I don't remember seeing compound extensions that didn't involve .tar being the first of two.
|
|
# ? Apr 21, 2017 20:49 |
|
bash scp: I'm trying to transfer a file from my local computer to a host server over scp with a bash command without a password, and use a key instead so it does not have to prompt me for the password every time. I followed these directions: https://blogs.oracle.com/jkini/entry/how_to_scp_scp_and What more do I have to do? It still prompts me for a password. I checked if the key exists on the server after transferring with ssh-copy-id, and I set the permissions to 400 (even though I think all the require is 600). edit I ran SSH in verbose mode, and I can't see anything where they server sent a public key packet. LP0 ON FIRE fucked around with this message at 21:45 on Apr 21, 2017 |
# ? Apr 21, 2017 21:00 |
|
nielsm posted:Yep, I don't remember seeing compound extensions that didn't involve .tar being the first of two. I'm pretty sure that if you compress a single file you can get e.g. file.mp3.gz (which incidentally would be dumb because mp3's are already compressed). But yeah, it's pretty rare.
|
# ? Apr 21, 2017 21:06 |
|
All right, thanks guys! I like when the correct answer is 'do the easy thing'
|
# ? Apr 21, 2017 21:48 |
|
LP0 ON FIRE posted:bash scp: Is PubKeyAuthentication disabled in sshd on the server?
|
# ? Apr 21, 2017 22:56 |
|
LP0 ON FIRE posted:bash scp: Unless you have your ssh config (~/.ssh/config) set to always use your key you'll need to run ssh with the -i flag and specify the key.
|
# ? Apr 22, 2017 15:47 |
|
Kilson posted:Is PubKeyAuthentication disabled in sshd on the server? Nope Blinkz0rz posted:Unless you have your ssh config (~/.ssh/config) set to always use your key you'll need to run ssh with the -i flag and specify the key. I tried this because I have a custom key name, and it asks for the passphrase and then the password again. To clarify, I have something like: scp -i ~/.ssh/myKeyName.pub ~/Documents/fileToSend.php blah@blah:./whereToSend EDIT - So I retried with a non-custom key name, and it works. Looks like that is the problem. I can live with a default key name for now, but eventually I'd like to change that. EDIT 2 - I'm specifying the public key instead of the private key with the -i flag! EDIT 3 - My key now works with the custom name after I changed it to the private key in the -i flag. LP0 ON FIRE fucked around with this message at 18:51 on Apr 24, 2017 |
# ? Apr 24, 2017 18:06 |
|
baka kaba posted:All right, thanks guys! I like when the correct answer is 'do the easy thing' I have seen log rotation where the _x suffix was just added to the end of the extension. Well to be more specifoc it was .x, but it usually isn't something I have seen done on windows.
|
# ? Apr 25, 2017 01:54 |
|
Classic Mac OS also had an idiosyncratic way of identifying file types with resource forks. And for a long time OS X apps had to support both types of files.
|
# ? Apr 26, 2017 00:17 |
|
I'm starting my second project at my new job. Between learning and applying a ton of new biology terms needed for the position, learning about databases and their databases, how to navigate their codebase, how to read others code, etc. I'm feeling absolutely overwhelmed. I'm nervous going to my boss and being like, I need an easier project would be great but probably not the best solution, thoughts?
|
# ? Apr 27, 2017 16:05 |
|
Feeling overwhelmed is natural It's a new job, there'll always be a learning curve, and what's more it seems like this a domain that's new to you. Your team probably expects their new hire to go a bit slower while you learn the ropes of the particular role / industry / whatever. Do you think that your team or your boss has unrealistic expectations about your rate of learning? Do you know who to go to on your team to learn more about whatever topics? edit: quote:I'm nervous going to my boss and being like, I need an easier project would be great but probably not the best solution, thoughts? This is not a good solution. You're on your second project and just starting it at that. Giving up and saying you need something easier when you're at the outset of a project isn't looked upon very well. Getting into it and saying "I think the work is not going at the speed we expected because [reasons], I think we might not reach the deadline because of it, and a more realistic deadline would be [time]" is generally fine. Your boss might say "Nope it's going fine at your current pace, keep it at" or "Okay what do you need in order to make the original deadline?" and those are good outcomes! csammis fucked around with this message at 16:27 on Apr 27, 2017 |
# ? Apr 27, 2017 16:21 |
|
huhu posted:I'm starting my second project at my new job. Between learning and applying a ton of new biology terms needed for the position, learning about databases and their databases, how to navigate their codebase, how to read others code, etc. I'm feeling absolutely overwhelmed. I'm nervous going to my boss and being like, I need an easier project would be great but probably not the best solution, thoughts? Can you find that "easier project" by breaking the big project down into smaller parts? The project as a whole seems overwhelming but the first quarter of the project might feel perfectly whelming. And you can keep breaking each piece down into smaller pieces, recursively, until you have a handle on some discrete chunk. Maybe you can get some help from your boss or an experienced coworker to break the big project down? That's definitely its own skill and it's easy to slice something into nonsensical pieces when you're new.
|
# ? Apr 27, 2017 16:52 |
|
I was recently promoted to sweng from test engineer after spending four years in uni studying compsci and i was so lost and scared for my first several weeks. Then stuff starts to click easy and at least at my company they like it when you spend a lot of time researching a solution before trying to implement one then having to go back to square one when it turns out it's bad. It also probably helped that I started going over my notes and old projects so I remembered what exactly i was doing. I normally don't advocate doing work stuff in your free time but if you're feeling rusty or lost it may be worth it for a few nights (also with a large gin and tonic)
|
# ? Apr 27, 2017 16:54 |
|
huhu posted:I'm starting my second project at my new job. Between learning and applying a ton of new biology terms needed for the position, learning about databases and their databases, how to navigate their codebase, how to read others code, etc. I'm feeling absolutely overwhelmed. I'm nervous going to my boss and being like, I need an easier project would be great but probably not the best solution, thoughts? Don't worry about the big picture. Just tackle one thing at a time. Of course you have a lot of learning to do, and that's hard, especially if you're not used to self-directed learning. But as csammis says, it's fully expected that devs be slow starting out. When I started my current job, they were pleasantly surprised that I was contributing meaningfully before the six-month mark, and it sounds like I have substantially more industry experience than you do. Just take your time. This does get easier, both with practice and as you gain more context on the problem you're working on.
|
# ? Apr 27, 2017 17:26 |
|
huhu posted:I'm starting my second project at my new job. Between learning and applying a ton of new biology terms needed for the position, learning about databases and their databases, how to navigate their codebase, how to read others code, etc. I'm feeling absolutely overwhelmed. I'm nervous going to my boss and being like, I need an easier project would be great but probably not the best solution, thoughts? Like others said, I wouldn't recommend trying to bail out of it just yet. But, a lot of what you do will depend on what the workplace is like. It is possible to have a moronic boss who either doesn't understand that people need to get up to speed, or who thinks s/he is being the next Steve Jobs by being unreasonably demanding. If that's the case, just try to get along until you can find a better job. Otherwise, ask your coworkers questions, post on Stack Overflow or other resources, watch relevant tutorials, etc., and just keep your boss and coworkers apprised of your situation. It would be unusual for a brand new developer to truly contribute on a level commensurate with their salary in the first 6 to 12 months of a job, and if your managers know what they're doing, they'll realize this. The key is to show that you're making progress, and learning what you need to learn. Being thrown into relational database stuff without any prior training kind of sucks, but it is a very learn-able set of skills, with lots of introductory material available on the web. Try not to get completely wrapped up in that - it's usually possible to get enough DB understanding to get by without completely immersing yourself in it to the detriment of other topics. Also, everyone feels overwhelmed reading others' code and navigating legacy codebases. It's just the nature of the beast, I'm afraid. Figure out how your coworkers figure things out and do that. I use grep and find a lot to find stuff I need, but if you're not on a Linux system, that might not be the best approach to try first.
|
# ? Apr 28, 2017 16:08 |
|
Speaking of databases, I'm having lots of trouble with Oracle SQLDeveloper on Ubuntu. It seems to hang pretty often on any kind of sizeable query. Yesterday, I was doing a double join involving three tables with tens of thousands to hundreds of thousands of rows, and it hung. After I restarted my computer and tried again, it hung again. I seem to recall it being pretty brittle at my last job, too, where I used it on Windows. The same query ran fine through SQLPlus, so I know the database can handle it. At this very moment it's at least momentarily frozen just trying to fetch all the rows from one of those tables. It really just doesn't feel like professionally built software at this point - is there something I should configure to make it work better? Has anyone had good luck with some alternative program? (I don't think Toad is ported to Linux.)
|
# ? Apr 28, 2017 16:42 |
|
Eela6 posted:I want to learn a bit of pascal so I can dive into the DOOMRL source code. What is a good way to learn the language? I know Python very well and a decent amount of Ruby and MATLAB. I've also poked around in Java, JS, and C. DOOMRL is written in Pascal?
|
# ? Apr 28, 2017 19:59 |
|
wowzer. i wrote a terrible text adventure in 11th grade in pascal. who knew an actual game engine was doable in it.
|
# ? Apr 28, 2017 20:16 |
|
|
# ? May 15, 2024 04:59 |
|
Pollyanna posted:DOOMRL is written in Pascal? FreePascal, yeah. Kisielewicz wrote a Pascal library for roguelikes (FPCValkyrie) sometime around 2001(?) and used it for DoomRL, AliensRL and DiabloRL. It's worth remembering that while DoomRL is a "modern roguelike" it's still been around for 15 years.
|
# ? Apr 28, 2017 20:23 |