« first day (266 days earlier)      last day (3595 days later) » 

00:00
RELOAD!
[Cardshifter/Cardshifter] 7 commits. 1 opened issue. 1 issue comment.
[retailcoder/Rubberduck] 1 commit. 1 opened issue.
[skiwi2/Calculator] 5 commits.
[Vogel612/BloggingPlatform] 4 commits. 2 opened issues. 2 closed issues.
[Zomis/Calculator] 4 commits.
[Zomis/Duga] 1 opened issue. 2 issue comments.
[Zomis/test] 1 opened issue.
 
8 hours later…
07:52
hey
 
1 hour later…
08:55
@bazola that is not because of GWT, that is because I removed the log4j dependency entirely.
09:38
Monking
10:00
> fixes #54: Allowed cooler messages for timer, clarified help text
> Merge pull request #55 from Vogel612/54

fixes #54: Allowed cooler messages for timer, clarified help text
> Added possibility to launch javabot directly with maven
@bazola I think it is possible to solve this GWT + serialization mess, but damn this requires some dirty tricks.
10:36
Why, oh why, does it take so long time to build Cardshifter?
because your build-process is complicated?
10:51
Primarily because of findbugs and some quite long-running tests, me thinks.
> fixed some more Arrays.copyOf instances
> added CardshifterPlatform interface and two versions of it, GWT and non-GWT
> using interfaces, dependency injection, and adapter pattern for ByteSerialization reflection
^^ complicated commit.
@bazola The only compiler errors left now are:
Compiling module com.cardshifter.gdx.GdxDefinition
   Validating units:
      [ERROR] Errors in 'file:/C:/Users/Simon/Documents/workspace/Cardshifter/gdx/core/src/com/cardshifter/gdx/CardshifterClient.java'
         [ERROR] Line 35: The constructor Thread(CardshifterClient) is undefined
         [ERROR] Line 35: The method start() is undefined for the type Thread
      [ERROR] Errors in 'file:/C:/Users/Simon/Documents/workspace/Cardshifter/gdx/core/src/com/cardshifter/gdx/screens/ClientScreen.java'
I will get working on these shortly.
sooo.. you downgraded from java 8?
[Cardshifter/Cardshifter] build #803 for commit 82194d5f on branch gdx passed
11:35
@Vogel612 this part of the code has never been Java 8.
or okay, maybe it has, but I got rid of that a couple of months ago
11:47
hey
hiya
@SimonAndréForsberg How do you type an å on an US int. keyboard?
And if you pronounce it as an 'o', why don't you just write an 'o' then?
> extracted getTimeString method to be able to have one GWT version and one non-GWT version
> re-added System.exit in ServerMain that accidentally got removed a few commits ago. also changed exit code to non-zero
@skiwi We don't pronounce it like that!
Or well, sometimes we do.
@skiwi You need to learn how to change keyboard layout in Windows. Then you can use Alt + Shift to switch keyboard layouts.
@SimonAndréForsberg Is it not possible withotu changing layout?
12:02
['; corresponds to åäö on a Swedish keyboard
not without entering some magical ANSI code.
press Alt + 0xxx and you can print any ANSI character.
You just need to know they ANSI code for it.
@skiwi How did you type an 'å' there?
@SimonAndréForsberg Copied it from duolingo, lol
@SimonAndréForsberg But here I can type a ä by " followed by an a
Found it!
Right alt + w
äåé®þüúíóö«»¬áßðø¶´æ©ñµç¿
It opens a whole new world, lol
[Cardshifter/Cardshifter] build #804 for commit 2e5f2c2b on branch gdx passed
@skiwi s/world/alphabet/
I know enough Swedish to at least lol a bout this
12:17
I know enough Swedish to not lol about it.
Okay, @sᴉɔuɐɹɥԀ @bazola @skiwi I have good news and bad news:
GOOD NEWS: It compiles for GWT!
Bad news: It doesn't work yet.
Well... I don't know how to react to that news, lol
Mixed feelings ^^
lol
> Liebe Deutschsprachige & Lieve Nederlandstalige A special warning to you: in the vast majority of the cases, the ending -en is not a plural ending, as is German and Dutch! "Studenten" means the student. The plural of "student" is in fact "studenter).
@skiwi Good news: I didn't expect it to work yet.
lol2
> But why, oh, why do you do this to me?
Because “vattenet”, “sockeret” would be too blurry and sound way too Danish!
12:47
@skiwi eehhhmmm no
just... no
how dare they use a different plural-suffigation
@Vogel612 Whaaat? :)
well in german you can do plurals by just appending "-en"
To make it even worse, there's also "studenterna", i.e. the students
in english that's "-s", "-es"
@SimonAndréForsberg It's quite bad, yes
At least the sensing when a word is 'en' or 'ett' caries over from Dutch, as we have the same issue with 'de' and 'het'
We literally have no rules for those
Only guidelines, but every guideline comes with even more exceptions
12:59
Okay, trying to make a websocket connection to port 80 was not a good idea.
How many explosions?
> Added type hinting.
13:15
@SimonAndréForsberg too little, eh?
Need to figure out how to split a string into value and operator/function tokens
Well, value, operator and parentheses is my minimal indented working code
I could force to insert spaces between them for now
meh..
tokenize with regex!
Still would need to figure out how
well... digits
and everything else?
((?:\d++)|[+-*/])++
^^ not accounting for spaces and not javafied yet..
I"m not that advanced yet :(
And not using Java here ;)
13:25
on an unrelated note.. it's kinda wrong anyways..
(\d++|[-+*\/])
that one works better..
[2015-04-25 15:29:04,178]  INFO  ServerWeb [WebSocketWorker-13] (        ServerWeb.java: 44) - Connection opened: org.java_websocket.WebSocketImpl@15c5aaf5
[2015-04-25 15:29:04,182]  INFO     Server [WebSocketWorker-13] (           Server.java:158) - New client: 6:  @ /192.168.0.1:61776
slowly getting there...
right now there's no LoginMessage being sent though
13:51
Hint: When you calculated your output, also return it.
I need to learn how to read these things
Failure
Traceback (most recent call last):
  File "C:\Users\Frank\Dropbox\PycharmProjects\Calculator\calculator\test\test_calculator.py", line 15, in test_tokenize
    self.assertEqual([ValueToken(Decimal(2)), ValueToken(Decimal(4)), OperatorToken('+')], calculator.tokenize("2 + 4"))
AssertionError: Lists differ: [<cal[50 chars]03709588>, <calculator.calculator.ValueToken o[92 chars]240>] != [<cal[50 chars]037090F0>, <calculator.calculator.ValueToken o[92 chars]CF8>]

First differing element 0:
Maybe add a string representation
14:02
AssertionError: Lists differ: [VT(Decimal('2')), VT(Decimal('4')), OT(+)] != [VT(Decimal('2')), VT(Decimal('4')), OT(+)]
AssertionError: Lists differ: [VT(2), VT(4), OT(+)] != [VT(2), VT(4), OT(+)]
Why would that differ?
Some Python thing I guess
hashcode and equals?
list comparison not doing element-by-element comparison?
(don't think python has hashcode and equals)
@SimonAndréForsberg Need to use assertListEquals and there's a hashcode in python
But there's still a bug
And that bug is bugging me
I'm still confused
All I want is just an immutable class
I don't know why we need to define both the __eq__ and __ne__ operator ourselves
When implementing those it works
So, yay!
@skiwi python doesn't support the concept of "immutable class"
@Vogel612 Strings are immutable though
TRIPLE PING!!!
@SimonAndréForsberg LOL nice
ya well... but you can't have classes represent everything as strings...
You guys remember Hassan?
14:30
all too well
he just showed up in the java room on SO..
and got instantly put down \o/
Do I need to support 6.2 or 6,2 as decimal...
.
, are for parameter separation
Appereantly Python's str.isdecimal() disagrees
Oh how I would want a stack trace right now!
14:39
decimal_regex = re.compile(r"^-?\d+(\.\d+)?$")
@SimonAndréForsberg You broke stuff!
@skiwi No I didn't. I am trying to fix stuff. This has always been broken.
You confirmed that broken stuff is broken
believe it or not, I am making progress here.
And this is why I like Java
expected = [
    LeftParenthesesToken,
    ValueToken(Decimal(2)),
    RightParenthesesToken
]
This shouldn't compile
I'm adding classes instead of class instances
Writing a Callcutator is not easy
Neither is this.
Believe it or not, but I am making progress here.
14:55
I'm still not 100% sure what you are trying to do
getting Cardshifter to work on GWT
<afk>
@SimonAndréForsberg custom class-loader?
@SimonAndréForsberg Ah that one, which you attempted for quite some time already
@SimonAndréForsberg that was crazy fast!
@skiwi that sounds like english
15:12
@bazola Trust me, Dutch is worse
Even half of our own people don't know how to do it
so they speak/write it improperly without knowing?
Some do ;)
But over th eyears you still learn it though
I barely know anyone who has issues with it, but there are plenty in the country, but they are usually not well-educated, etc.
15:31
@SimonAndréForsberg I'm not sure exactly what GWT is or what it means that it compiles for it, but; yay I guess!
@sᴉɔuɐɹɥԀ GWT is google web toolkit, its the part of libGDX that translates the java code to javascript so that it can run in the browser
hey @sᴉɔuɐɹɥԀ
Ooooohhhhhh OK cool
So when that will work, Cardshifter will be playable in a regular browser, without firing up Java at all?
yeah
the reason why its such a pain in the butt is that theres lots of java code that cannot be translated to javascript, or that GWT can't translate, so we simply cannot write that code in that way or the whole thing won't work
@Vogel612 I got some pictures that you might find funny, was out seeing some bands last night.
15:38
If GWT could just support Java 8 ;-)
@bazola So is it basically a matter of rolling back the project to... is it, Java 6?
its not only that, its also things at a fundamental level
I don't think it has to do with the server though and the server is still on Java 8?
for example, all numbers in javascript are doubles, so any ints that you use in your code will be converted to doubles, and that can have interesting consequences
@skiwi correct
but if we use jackson on the server that will be a problem i think
a problem because the client can't use jackson, so it would have to manually parse the strings. i think that simon has already implemented binary serialization instead of jackson anyway though
Hmm, okay
btw, what do you think about this?
__operators = {
    "+": (0, lambda op1, op2: op1 + op2),
    "*": (1, lambda op1, op2: op1 + op2)
}
15:44
@skiwi i don't really understand it
It creates a dictionary (Map) of strings (operators) mapped to tuples containing operator precedence and a lambda
Maybe I should also add the amount of parameters it needs, unless I can figure that out given a lambda
@sᴉɔuɐɹɥԀ I lol'd, thanks ;)
The band was good too; call themselves S.I.C. (Spontaneous Internal Combustion). Not sure what that and "The Vogel's Mystery Machine" have in common.
Might be some obscure Scooby-Doo reference.
definitely is.
16:12
Hey :D
Nice avatar @bazola!
@Marc-Andre thanks!
16:31
@sᴉɔuɐɹɥԀ I'm doing some work for cardshifter at the moment
16:54
Hey @Marc-Andre
The home page is wierd on master.
Cool! On my phone now at the restaurant
Hmm what is weird about it?
The content overflow under the navbar on the left
@sᴉɔuɐɹɥԀ But I don't want to disturb you! I'll be here all day normally!
Some css classes was missing.
wierd
@Marc-Andre that's weird, any idea how that happened? Maybe merge conflict?
Also, not disturbing, waiting for my crepes to arrive ;)
@sᴉɔuɐɹɥԀ Don't know but not a big deal
@sᴉɔuɐɹɥԀ funny that what I ate for breakfast, my girlfriend and I ate at Le petite coin Breton
17:04
Never heard of it, but sounds good! This place (iHop) is one of few places that also make crepes and not just American pancakes
I can't stand pancakes, too doughey (pateuse) and too sweet
@sᴉɔuɐɹɥԀ It was ok, not the best place I've been to.
hey @Marc-Andre
</afk>
@Vogel612 not that I know of, no
@skiwi s/attempted/been wanting to attempt/
@SimonAndréForsberg I thought you already had experimented with it in the past
@skiwi it plans to do so within a few months (now if only Android would do it as well...)
@skiwi I think multiplication is not the same as addition.
@skiwi not really I think. Perhaps I did parts of it only and then got sick of it...
@sᴉɔuɐɹɥԀ yeah, I totally agree with what he wrote there.
17:18
Hey @skiwi!
Good I'll change it then :)
Be afk for a second, and 4 pings!
@SimonAndréForsberg Ah yes, Android, of course
@SimonAndréForsberg Good catch! I haven't written the tests yet
maybe thats why it made no sense :)
@SimonAndréForsberg trying to pull your changes but for some reason it can't find this:
import com.cardshifter.gdx.NonGWTPlatform;
@sᴉɔuɐɹɥԀ is there a reason why you've prefix almost all css classes with the element the class is applied to ?
@bazola there are some changes I haven't pushed yet, hold on
Slowly getting there...
However, now I have a server-side error:
[2015-04-25 19:31:56,262]  WARN  ServerWeb [WebSocketWorker-14] (        ServerWeb.java: 81) - Connection error: org.java_websocket.WebSocketImpl@31cc09de
java.lang.IndexOutOfBoundsException
	at java.io.ByteArrayInputStream.read(ByteArrayInputStream.java:180)
	at java.io.DataInputStream.read(DataInputStream.java:149)
	at com.cardshifter.api.serial.ByteTransformer.readOnce(ByteTransformer.java:68)
	at com.cardshifter.server.model.ServerWeb$InnerServer.onMessage(ServerWeb.java:72)
	at org.java_websocket.server.WebSocketServer.onWebsocketMessage(WebSocketServer.java:469)
Ah, I think I know why
will make a commit first though and push some changes
17:39
@SimonAndréForsberg Have you added tests to your calculator for all precedence combinations, or how did you test that?
@sᴉɔuɐɹɥԀ We will need a talk ! (ahahah) No really I'm changing a bunch of HTML and CSS I'll need to update you on what and why I've done certain things
TTQW!!
@Duga crashed, have to restart.
@skiwi not all of them, but I tried to come up with some variations and test those.
[Cardshifter/Cardshifter] build #805 for commit 5a7d4328 on branch gdx passed
I add more test cases as I think of new issues
17:41
@SimonAndréForsberg Did you make @Duga crash with the Cardshifter server...?
With that Websockets to port 80
> changed CardshifterClient to an interface and using dependency injection through the CardshifterPlatform to determine which client to use
> added implementation of GWTClient using websockets
> logging in GWT
> added reflection definitions of message classes in GWT
> avoiding usage of DataOutputStream.writeChars as it is not implemented in GWT
@skiwi hmmm.... don't think so..
> fixed reliance on default charset
> GdxReflection now skipping some LibGDX-special (or GWT-special) fields that are irrelevant to serialization
Do you need to define an enum in Python before you can use it? Any clue?
never used an enum in python
Okay, I can send messages from GWT to the server. When the server tries to send things back though, things crash.
17:50
> server correctly reads messages from GWT client
So you're halfway done? ^^
[Cardshifter/Cardshifter] build #806 for commit d67500d5 on branch gdx passed
definitely strange that it crashes only on message send
Not strange at all.
GWT client expected Base64-encoded String, but I sent JSON String...
Works better now, on to the next problem
18:00
Luckily, the next problem is easy to diagnose thanks to Google and Github Issues.
Guess who is using package-private constructors and final fields?
Ahahah
Ah so this is why my tests are infinitely running... I have an infinite loop
My old tests are still passing!
> Server now correctly sends Base64-encoded Byte-transformed messages to client
> Added operator precedence support.
Moved Token-related classes to their own tokens file.
[Cardshifter/Cardshifter] build #807 for commit c555f7ec on branch gdx passed
i wonder why it still can't find this package import com.cardshifter.gdx.NonGWTPlatform;
I've been doing clean and install as well as gradle refreshing
i see the source code in the cardshifter maven project
@bazola that class exists in a 'nongwt' Gradle module that I created. Try removing the project and import it from Gradle again.
18:12
ah, i was hoping that grade refresh would accomplish the same thing
i thought that it rebuilt the model when it did that
perhaps it doesn't
Do I dare try to play a game?
why not? :)
Because it broke.
I'm doing some change on the template of the site! I hope it will look nicer!
> made all Message-classes use public constructors and non-final fields, to work with GWT serialization
> Update some classes to remove element in the rule
18:28
@sᴉɔuɐɹɥԀ Hiding some <br> in the code :P
[Cardshifter/Cardshifter] build #808 for commit 96c936ce on branch gdx passed
> Implemented evaluation of an expression using a list of tokens in Reverse Polish Notation.
IT WORKS!!!!!!!!!!!
18:55
@skiwi That wasn't so hard after all, was it?
@SimonAndréForsberg Still took quite some time!
And I didn't figure out the algorithms myself...
What I was trying to do at first
Though implementing the Shunting-yard algorithm and Reverse Polish Notation is still not easy
Things still to do are supporting functions, supporting more operators/functions by default and not relying on whitespace anymore
You rely on whitespace?
@SimonAndréForsberg Yep!
I need to think about how to not rely on it
I need to somehow classify things in a string as either values, operators, functions or parentheses
@skiwi I knew Python relies on some whitespace, but that doesn't mean that your programs need to do so as well.
Hmmm, though if I have regex like ([a|b|c])+ then I can retrieve all values with that? As example string aabbbaccabcc
 
1 hour later…
20:20
> added CardshifterSerializationException, using special Base64-encoding for Websocket messages. GWT is now playable. FIXES #154 !!!!
@sᴉɔuɐɹɥԀ @bazola @skiwi ^^^^^^
[Cardshifter/Cardshifter] build #809 for commit 1cd5fc5b on branch gdx passed
> Beautify all the files
> tried a new layout, clean the hader of each section
20:41
@SimonAndréForsberg Closed, as in, finished?
That's a browser, that's Cardshifter and that's LibGDX!!!
4
@skiwi Closed, as in, finished, playable, working, DONE!
4
@SimonAndréForsberg SWEET!!
21:15
@sᴉɔuɐɹɥԀ Ping when you got time for the website
21:26
I've got quite some progress again on my calculator
Right now I'm basing the process on the following structure:
1. Convert the expression to a list of tokens, with an extra pass to replace binary minus/plus with an unary minus/plus if necessary
2. Convert that tokenized list in encountering form to a list in RPN form, with parentheses also removed
3. Calculate the output using RPN form
21:38
> fixed so that Android version compiles again
@Duga @SimonAndréForsberg Can't have everything working at once? ;-)
Fix one bug, two new bugs pop up
Sure we can have
Just forgot to fix that thing after an old refactoring
There are some GWT-related bugs though.
I"m sure we'll be able to fix those
I think we will.
A disconnected websocket connection causes problems on the entire server right now. That is the most important thing to fix... another day!
[Cardshifter/Cardshifter] build #810 for commit 5e8930ce on branch gdx passed
21:43
@SimonAndréForsberg Going to bed early, eh?
And I really shouldn ot be behind my PC anymore at this time
Like I wanted to log off 1,5 hours ago
I get tired much earlier now for some reason, after my Ukraine visit.
But I was also coding!
21:44
@SimonAndréForsberg Some things in your daily life do really strange after 'events' (like visiting somewhere for a period of time)
@SimonAndréForsberg GNTTGTB
 
1 hour later…
22:57
@Marc-Andre I'm on and off, either you can fill me in now, or we can wait until tomorrow, whichever is most convenient for you
It will better if we make this live so maybe next time you have time! I've fix a bunch of "issues"!
> beautify and clear cyberg
> Fix cyborg margin for all the content
@Duga lol cyberg
23:17
@Marc-Andre yeah no problem, do you prefer on chat or Skype? Should be free all day tomorrow, or any evening this week
Good maybe this week then
and Skype could be fun
23:45
Loki Astari vs. Simon André Forsberg: 4164 diff. Year: -1602. Quarter: -303. Month: -303. Week: +109. Day: -60.
200_success vs. rolfl: 355 diff. Year: -351. Quarter: -194. Month: -194. Week: +92. Day: +10.
Simon André Forsberg vs. Mat's Mug: 1521 diff. Year: +570. Quarter: -180. Month: -180. Week: -475. Day: +30.

« first day (266 days earlier)      last day (3595 days later) »