WTF Bites
-
@Tsaukpaetra said in WTF Bites:
@Tsaukpaetra said in WTF Bites:
@Tsaukpaetra Hmm, yeah, haven't had a chance to play around with UE4.
Also,
@Tsaukpaetra said in WTF Bites:
connecting to our DB ('cause passwords and all that)
Hmm... wtf-sense is tingling. ;-)
Oh, It's not that bad, I finished getting rid of the HTTP requests (that go out to our website and returns DB data) from it. ;)
I'm assuming you left the S off intentionally, too.
Nope! We don't have an SSL certificate yet!
Edit: Today the CEO is supposed to be doing the verification thingies to get a validation or whatever so we can get a Code Signing cert (I'm still under the impression that I'm the only one who knows anything about this stuff, so I'm prodding them along).
Update: highly unlikely that he succeeded, didn't message me for help at all.
-
Chrome is going to do the same thing as soon as the January stable version update drops within the next week.
Chrome complains about some our internal site because of weak certificate, but it looks differently. It opens the site normally, just the "https" is red and crossed-out, there is a “Not Secure” text beside it, and only in the “Details” in the context menu it says “The certificate for this site expires in 2017 or later, and the certificate chain contains a certificate signed using SHA-1.”
-
LTO is like that, but across independently-compiled library boundaries.
You say that like it's a bad thing! :-)
As far as I understand, GCC & Clang require that GIMPLE / LLVM bitcode be available for LTO to work. So, if you want to get inlining across a (static) library boundary, you need to build the library with LTO enabled, and make sure that your .a includes it as well (gcc-ar and friends). Not sure about dynamic libraries, but I'd guess that it doesn't happen there (I'd guess the .so doesn't include the GIMPLE/LLVM bitcode in the first place...).
Not sure about MSVC, but I'd imagine that similar restrictions apply there. I'd be surprised if they did LTO across dlls.
-
@cvi I expect a JIT could optimize across dll/so boundaries, but a normal compiler could not since it doesn't even know which copy of the dynamic object you're running with. It's even possible (in gcc) to link an executable while one of the shared objects is not available at all.
-
@coldandtired I always joked that I could piss data faster than our old 28.8k modem downloaded it....
Guess I was actually sort of right?
-
I did make use of LTO in the past, in a C project where I had to use opaque getters/setters to make sure my less reliable co-developer wouldn't attempt to directly access tricky members of a dynamically-sized structure, or mess with const-correctness in linked lists.
These getters/setters themselves were so trivial that they were probably smaller than the code to call them, so the LTO was a net improvement with zero drawbacks here.
Of course, when I later re-implemented the thing in C++, I didn't bother with that, and simply defined them inline within the class declaration for the same effect.
-
Not sure about dynamic libraries
Impossible with DLLs except with a JIT (LTO really is a kind of compilation) as you have to have the actual code in order to do LTO, and you don't have the actual code with a DLL until runtime. Having the GIMPLE/LLVM-IR makes it easier, but it's at least theoretically possible to go back to it from most machine code; I wouldn't want to try though. I also wouldn't expect a JIT to do LTO normally anyway; it adds a lot of cost and JITs are usually encouraged to be fast.
The big downside of LTO is that it tends to bloat the code, and that can lead to L1 ICache busting, which is a big cause of the non-obvious result that adding more optimisation can actually slow things down more. It's the exact same problem as with making virtually everything
inline
.
-
The code contractor has submitted in a merge request:
Code we actually need:
function changeStatus(newStatus, productId, order) { if (newStatus === Order.STATUSES.finished && order.type === Order.TYPES.type1 && !productId) { return false; } order.status = newStatus; if (newStatus === Order.STATUSES.finished || newStatus === Order.STATUSES.cancelled) { order.completed_at = new Date(); } return true; }
This is all private, BTW, and not used anywhere else.
-
@cartman82 He also had a bug that would hard-delete important data on an unrelated update.
His excuse: "I keep switching between .NET and this while at day job, I get distracted."
No shit. Maybe you shouldn't do private contracting while at work.
-
Captured by a friend:
Translation:
Are you sure you want to do that?
Damned software's getting all psychoanalyst on us!
"Are you sure?"
"... what of?"
"Oh, you know, just in general."
-
and you don't have the actual code with a DLL until runtime.
We should totally invent speculative static linking. Somewhat like speculative devirtualization, except that you inline (etc) code from dynamic libraries with a check if the same DLL as the linker found is being used. (Yeah, yeah, the bad ideas thread is )
tends to bloat the code, and that can lead to L1 ICache busting [...]
It's the exact same problem as with making virtually everything inline.I have honestly yet to ever observe inlining being the cause of this (I have yet to see the I$-performance being a bottleneck in hot code either, where the generated code wasn't utterly terrible to begin with). Code bloat is typically much more of an issue of either the compiler or the programmer being pants-on-head retarded (stuff like here, the initialization sequence with single byte movs is ... special).
-
I have yet to see the I$-performance being a bottleneck in hot code either, where the generated code wasn't utterly terrible to begin with
I have seen this; it is wildly counterintuitive, but the only way we've been able to explain the way that changing things in that codebase invariably slows things down.
The code in question is being replaced with a full JIT compiler. Probably. (It's a truly crazy project, but in a good/fun way.)
-
The Visual Studio 2015 installer is 2GB bigger than the Windows installer.
Just think about that for a second.
-
@anonymous234 Emulator images.
-
@RaceProUK And I guess in the far times of 2015 they didn't know you could distribute those things separately.I'm stupid, disregard.
-
@anonymous234 said in WTF Bites:
The Visual Studio 2015 installer is 2GB bigger than the Windows installer.
Just in case you didn't upgrade to Win10 yet, it will install it at the same time
-
@anonymous234 They are distributed separately. It's just they're also included in the everything-including-the-kitchen-sink VS2015 installer too.
-
@anonymous234 said in WTF Bites:
@RaceProUK And I guess in the far times of 2015 they didn't know you could distribute those things separately.
I'm not sure what you mean - the default installer you download from Microsoft is just a few megabytes and then pulls down only the stuff you selected for installation.
-
@Rhywden You're right, I even have the 3.4MB "web installer" right here. Somehow I saw the other installer and thought it was the only one.
-
@anonymous234 said in WTF Bites:
The Visual Studio 2015 installer is 2GB bigger than the Windows installer.
That's just the full installer. But the normal installation is pretty big too. I heard somewhere it's because it bundles big chunks of each preceding version. Because raisins, blah blah compatibility. And that they even promised to something about it in 2017.
-
And that they even promised to something about it in 2017.
If they did, they didn't do much: a VS2017 install is still pretty foken massive.
-
@RaceProUK But it has a much more modular installer now.
The smallest install is just a few hundred megabytes, yet still contains basic code editing support for more than twenty languages along with source code control. Most users will want to install more. You can add one or more 'workloads' that represent common frameworks, languages and platforms - covering everything from .NET desktop development to data science with R, Python and F#.
-
@anonymous234 True, but most setups will still suck up a handful of GB.
-
@anonymous234 said in WTF Bites:
F#
Who the hell uses that ?
Oh right, almost nobody. It's rated 27th on the Tiobe index.
To give you an idea, Go is rated 13th and COBOL is 25th.
But it's ahead of Fortran at the 28th position.
-
@TimeBandit
Maybe Dwarf Fortress will convert to it and we'll get large screenshots extolling the virtues of F# and how it's so much better than G♭.
-
Maybe Dwarf Fortress will convert to it and we'll get large screenshots extolling the virtues of F# and how it's so much better than G♭.
Why do you hate us that much ?
-
@anonymous234 said in WTF Bites:
But it has a much more modular installer now.
Unlike xcode. And I believe that download was also bigger than the Sierra install I just did. And then it still doesn't install everything - you have to get the command line tools separately.
-
Unlike xcode.
Dont mention that thing in front of me! I worked on multi-platform mobile app in previous job and do so in the current and in both maintaining iOS projects is/was a huge sink of time in between the fact not everybody has Mac over the unreadable project format that you can't fix by hand when it breaks to the constant breakage due to changes with each system update.
-
Unlike xcode.
Dont mention that thing in front of me! I worked on multi-platform mobile app in previous job and do so in the current and in both maintaining iOS projects is/was a huge sink of time in between the fact not everybody has Mac over the unreadable project format that you can't fix by hand when it breaks to the constant breakage due to changes with each system update.
Ooooh don't forget the absolutely opaque error messages and the constant random editor fails because raisins. Or the fact that it takes more system resources than running 3 simultaneous instances of all pointed at the likes thread (and that's just at startup, not to mention actually <gasp> using it). Am I bitter? Yes. Yes I am.
-
@Benjamin-Hall said in WTF Bites:
Or the fact that it takes more system resources than running 3 simultaneous instances of all pointed at the likes thread
Yeah. Because not everybody has a mac, but everybody occasionally needs to update the projects, colleagues were trying to set up a MacBook with remote access.
First they tried xrdp, because that protocol has the convenience of being able to share files from the client. We got so far as compiling it, but then failed, because on Sierra (orwhatisthenewestupdatecalled) the port is blocked. Not in firewall default config, but somewhere deep in system and nobody managed to find a way to unblock it. And alternate port is not practical with the Windows client.
So they switched to VNC. That “works”, for suitable values of “works”, but is slow as molasses if more than 2 people want to connect at once. And the network sometimes just fails and it is generally pain in the arse.
… just accumulating evidence to persuade the system architect that we do have to switch to CMake despite the effort we spent getting the normal project to work acceptably.
-
@Benjamin-Hall also, xcode does not make the code signing and provisioning nonsense any easier to deal with
-
@Benjamin-Hall also, xcode does not make the code signing and provisioning nonsense any easier to deal with
It's not so bad, if you're doing things the Apple way (meaning only dealing with the Apple App Store, through their services--which reminds me to rant sometimes about itunesconnect .....). My biggest complaint about Apple products is that they have one approved way of doing things--anything else is completely unsupported, and will probably break badly or cause nightmares.
-
-
@Benjamin-Hall said in WTF Bites:
will probably break badly
orand cause nightmaresFTFY
Touche (with that fancy french thing on the appropriate vowel).
-
@TimeBandit said in WTF Bites:
@anonymous234 said in WTF Bites:
F#
Who the hell uses that ?
Oh right, almost nobody. It's rated 27th on the Tiobe index.
To give you an idea, Go is rated 13th and COBOL is 25th.
But it's ahead of Fortran at the 28th position.Also according to this index, all of them are more popular than T-SQL. You'd think - maybe everybody uses Oracle? - but no, it's at 20, behind Dart. Oh, and bash is about as popular as RPG. And less than Logo.
This does not seem to be a very good index.
-
@Maciejasjmj said in WTF Bites:
This does not seem to be a very good index.
It's probably based on something like how many bing hits they get for each term. So Java includes the island and the coffee, Python includes the non-venomous snakes, C quite possibly includes C# and C++, etc.
-
@dkf And LOLCODE means cats have learned how to use the Internet.
-
It's probably based on something like how many bing hits they get for each term.
Since there are many questions about the way the TIOBE index is assembled, a special page is devoted to its definition. Basically the calculation comes down to counting hits for the search query
+"<language> programming"
Which is slightly less stupid, but still stupid nonetheless (for Bash, for example, where you'd usually say you're scripting).
-
@Benjamin-Hall all this talk of xcode has triggered me
- plug iphone into expensive mac pro
- itunes opens
- hit 'run' on xcode
- : This device is no longer connected.
-
@Benjamin-Hall all this talk of xcode has triggered me
- plug iphone into expensive mac pro
- itunes opens
- hit 'run' on xcode
- : This device is no longer connected.
Mea Culpa, mea maxima culpa. That's a legitimate trigger warning. XCode causes PTSD.
-
@Maciejasjmj said in WTF Bites:
This does not seem to be a very good index.
It's probably based on something like how many bing hits they get for each term. So Java includes the island and the coffee, Python includes the non-venomous snakes, C quite possibly includes C# and C++, etc.
No need for guessing (emphasis above is mine):
You can read how it's defined on the Tiobe index definition page linked from the results page.
-
-
i used to think that blog was kind of exaggerating but after only 4 months of working with xcode i realised i was wrong
-
@Tsaukpaetra said in WTF Bites:
@Tsaukpaetra said in WTF Bites:
@Tsaukpaetra said in WTF Bites:
@Tsaukpaetra Hmm, yeah, haven't had a chance to play around with UE4.
Also,
@Tsaukpaetra said in WTF Bites:
connecting to our DB ('cause passwords and all that)
Hmm... wtf-sense is tingling. ;-)
Oh, It's not that bad, I finished getting rid of the HTTP requests (that go out to our website and returns DB data) from it. ;)
I'm assuming you left the S off intentionally, too.
Nope! We don't have an SSL certificate yet!
Edit: Today the CEO is supposed to be doing the verification thingies to get a validation or whatever so we can get a Code Signing cert (I'm still under the impression that I'm the only one who knows anything about this stuff, so I'm prodding them along).
Update: highly unlikely that he succeeded, didn't message me for help at all.
Update update: And we apparently forgot. Guess I have to take the initiative, print out all the stuff, and have everything ready to go just-sign-here style.
-
WTF how much EFFORT did you need to scrounge up to rainbow colorize each paragraph like that?!?!
-
the Sierra install I just did
Remember to save often. You might die at any time.
-
https://h30686.www3.hp.com/
Can someone explain to me what is up with HP's subdomains?
-
@LB_ Looks like a CDN domain?
-
@RaceProUK what if I told you their official support forums were at
http://h30434.www3.hp.com/
? If you know a more memorable domain name for those forums I'd love to know.
-
@RaceProUK what if I told you their official support forums were at
http://h30434.www3.hp.com/
? If you know a more memorable domain name for those forums I'd love to know.wow! you're not kidding