Tumblelog by Soup.io
Newer posts are loading.
You are at the newest post.
Click here to check if anything new just came in.

April 20 2017

Full text:
Göring
Why, of course, the people don't want war. Why would some poor slob on a farm want to risk his life in a war when the best that he can get out of it is to come back to his farm in one piece? Naturally, the common people don't want war; neither in Russia nor in England nor in America, nor for that matter in Germany. That is understood. But, after all, it is the leaders of the country who determine the policy and it is always a simple matter to drag the people along, whether it is a democracy or a fascist dictatorship or a Parliament or a Communist dictatorship.

Gilbert: There is one difference. In a democracy, the people have some say in the matter through their elected representatives, and in the United States only Congress can declare wars.

Göring: Oh, that is all well and good, but, voice or no voice, the people can always be brought to the bidding of the leaders. That is easy. All you have to do is tell them they are being attacked and denounce the pacifists for lack of patriotism and exposing the country to danger. It works the same way in any country.

Reposted fromNaitlisz Naitlisz viapotatoe potatoe
Play fullscreen

Wall Hitboxes

April 19 2017

8446 0f1b 390
Reposted fromswissfondue swissfondue viabigbear3001 bigbear3001


Ein Zwischenruf zur sogenannten „Mutter aller Bomben“

Liebe Medien,

die Amerikaner haben ihre größte konventionelle Bombe mit 8.000 Kilogramm Sprengstoff über Afghanistan abgeworfen. Der erste Einsatz dieser Bombe überhaupt. (In einem Land, in das Bundesinnenminister Thomas de Maizière immer noch abschieben will, weil er es für sicher hält. Aber das nur nebenbei.)

Tut uns bitte in der Berichterstattung den Gefallen und übernehmt nicht gedankenlos die Kriegsrhetorik der US-Streitkräfte: Der Begriff „Mutter aller Bomben“ ist testosterondampfende Militär-Poesie und eine unangemessene Trivialisierung und Bagatellisierung eines Kriegsaktes.

Abgesehen davon bringen Mütter nicht den Tod, sondern schenken Leben.

Euer Lorenz Meyer

Reposted fromdarksideofthemoon darksideofthemoon

April 18 2017

Play fullscreen
Time Lapse of Crowd Control in Tokyo Japan for Comic Market.
Reposted fromvolldost volldost
1912 b8a9 390

Rüstungsgroßkonzern 07: Diehl BGT

Reposted fromE-ART E-ART viabootlegs bootlegs
1924 2794 390

Rüstungsgroßkonzern 06: SAFRAN

Reposted fromE-ART E-ART viabootlegs bootlegs
FASCISM ON STEROIDS
Reposted frome-gruppe e-gruppe viabootlegs bootlegs

April 17 2017

Reposted fromhighlmittel highlmittel
9946 5910 390

purified-zone:

rosewater1997:

Can’t believe the French found a way to make me feel pretentious for wanting to die 

holy shit

Aw man - finally

I think I now got all the errors out. Maybe. I don’t know. Honestly. Wow. Fuck. You cant believe how angry I am at the powers that be for the extremely strange problems I had to solve. This is fucked up really. Let me explain.


1. Problem: Please speak to me, API

The API (Application Programming Interface) is a kind of delivery entry for tumblr. Every third party app uses this interface to get all the data it needs for its tumblr user. That could be an android or iPhone app, another website that lets you posts stuff to your tumblr account. Or, you know, some thrown together java programm that collects images and posts them for that one asshole. Me basically.

Talking to that API isn’t what I would call super easy because you have to authenticate yourself to it. That makes sense because it has to make sure that it knows a) which app wants to do what you want to do (in case they want to ban an app or restrict it other ways) and b) which user it is talking to and that they are okay with this third party app accessing their tumblr data and services.

At the same time tumblr and other services like it (twitter, facebook, pinterest whatever all use the same authentification process) don’t want you to ever use your username and password with any third application app because that would be a security nightmare.

All of this is made possible with the super simple OAuth authentification process. I’ll try to explain this again really simple as far as I understand it myself.

Basically an application has its own userid and password (which are called consumer key and consumer secret) and the the permission the user gave to an application to access their account also has its id and password (called oauth token and oauth token verifier) and isn’t that just all WONDERFUL.

Now to get the API to do anything, you’ll need these four keys before you can make a request so you can recieve an access token which is the authentification I was talking about. All of that was working fine for a long time. Until suddenly, a few weeks ago now it didn’t. It just stopped working. I had all the four keys right. I tried reauthenticating, I tried registering new Applications. As far as I could tell I did everything right but whatever I tried, the api just basically told me to go fuck myself because I wasn’t authenticated. That was it. No other reason given. Google didn’t help. Even the stupid example on the tumblr api Page (so their code, not mine) didn’t work as well. I was all out of ideas.

Today I found out what the problem was.

The time was wrong on my computer.

I am getting angry again typing this.

The time. Was wrong. On my. Computer. Locally.

Because of daylight savings time, my computer was an hour ahead. I didn’t bother correcting that because, I was kinda busy doing other stuff. You know. Finding out why I couldn’t access an API for example.

Apparently every OAuth request is time sensitive as well. Meaning that somewhere in the process, the computer who is sending the request seemingly sends a timestamp with it. This timestamp, of course, represented a point in time that was one hour in the future and the authentication process went “fuck you. I’m not giving any access to time lords” and that was it. Imagine that. Not being able to access information on websites because you’ve got your clock going wrong.

This error would probably not have occured if the daylight savings time had been shifted in the other direction. Being in the past would be perfectly fine. Its only the progressive people, who live in the future, the tumblr api hates.

By the way I, of course, tried to use my program on another computer and another operating system (Windows 7) and it didn’t work there either because THE TIME WAS WRONG AS WELL.

FUCK.


2. “true” and 1 is not the same.

So I corrected the time on my computer just to find another clusterfuck waiting for me.

Lets say you want to have some information about a certain user. You’d make the appropiate call to the tumblr API and (if you are PROPERLY AUTHENTICATED) it answers something like this:

{
  "meta": {
    "status": 200,
    "msg": "OK"
  },
  "response": {
    "user": {
      "name": "knusprig-titten-hitler",
      "likes": 168,
      "following": 58,
      "default_post_format": "html",
      "blogs": [...

Following would be a list of blogs I manage under my account. An example of such a blog item (just a part of it):

 {
          "admin": true,
          "ask": true,
          "ask_anon": true,
          "ask_page_title": "ask me shit",
          "can_send_fan_mail": true,
          "can_submit": true,
          "can_subscribe": false,
          "description": "I look at stuff so you don't have to.\nHave found something you think would fit in here?\nPress the \"contribute!\" button and...",
          "drafts": 0,
          "facebook": "N",
          "facebook_opengraph_enabled": "N",
          "followed": false,
          "followers": 8791,
          "is_adult": false,
          "is_blocked_from_primary": false,
          "is_nsfw": true,
          "likes": 168,
          "messages": 678,
          "name": "knusprig-titten-hitler",

So this is what an api call answer looks like. Now I want to use the data such as this in my java program. To be able to do that I use the official tumblr api java wrapper library called “jumblr” (creative, aren’t they?).

With some black magic involved, this information gets automagically transformed into a java object.

Now Java is a rather strict language.  That means Java wants to know beforehand what kind of structure a reference is going to point to.

Example:

String someWords;
someWords = “this is a String and Java is okay with that”;

This works fine. We declared “someWords” to be a String. A sequence of Characters and thats what we put in. So thats okay.

String someWords;
someWords = 2;

This is a paddling. We have told java that we want to put Words into “someWords” but then try to put a number in. That won’t work.

Coming back to our api example if we consider that we want to put this information into managable Java Objects

          "ask_anon": true,
          "ask_page_title": "ask me shit",

the library responsible to transform this needs to know the right types for “ask_anon” (boolean) and “ask_page_title” (String). These have been, thankfully, “configured” or programmed by the guys who wrote the jumblr wrapper and that worked wonderfully.

Until it didn’t.

Now it crashes and burns. Why? Because the tumblr api is so wonderful and special. For my main blog, the value of ”ask” and “ask_anon” looks like this.

           “ask”: true,
"ask_anon": true,

Great! So the developers of jumblr rightfully declared these fields like so:

 private boolean ask, ask_anon;

So dear java thinks that these are booleans. A datastructure that can only be one of two things. true or false. Not a number, not characters. So far so good. Lets take a look at the next blog I have:

          "ask": 1,
          "ask_anon": true,

TUMBLR WHAT THE FUCK. WHY. WHY IS THAT SUDDENLY 1?

It actally ALTERNATES that value between “true” and 1 between my blogs. This is new. And wrong.

Java tries to put 1 into a boolean and crashes. And it does so not in my code but in the standard library you use to access this. Why am I always so special? Why? I will never know.

Now I am working at a workaround. What is going on here?

April 15 2017

Reposted fromFlau Flau vian0s n0s

smallhonkfriend:

person: how is your mental state?

me: 

image

smallhonkfriend:

person: how is your mental state?

me: 

image
Reposted fromMystrothedefender Mystrothedefender viamangoe mangoe
Reposted fromNaitlisz Naitlisz viaaperture aperture
6145 af69 390
Reposted fromstrumienpola strumienpola viaaperture aperture
5168 10ec 390
Reposted frommieteq mieteq viaaperture aperture
3625 ad1d

pizza-eagle:

felixontheweb:

jacquesattack:

You don’t fuck with the tray master

HOLY SHIT

This is what the Exotic Weapon Proficiency feat looks like in real life.

Older posts are this way If this message doesn't go away, click anywhere on the page to continue loading posts.
Could not load more posts
Maybe Soup is currently being updated? I'll try again automatically in a few seconds...
Just a second, loading more posts...
You've reached the end.

Don't be the product, buy the product!

Schweinderl