« first day (265 days earlier)      last day (3596 days later) » 
00:00 - 21:0021:00 - 00:00

00:00
RELOAD!
[retailcoder/Rubberduck] 1 opened issue. 1 issue comment.
[Zomis/Calculator] 18 commits.
[Zomis/ZonesAndCards] 3 commits.
@Marc-Andre Euros? Nice.
That's about 287.75 $CAD - Gets you a few cases of Bleue :)
(or Molson, if you are masochist ;)
00:39
Ahaha but the bad thing it's just spam :P
Our taxes have not yet been done :P
So we can't possibly have received any money yet...
And it will be our "comptable" that we will say what we will receive and it will not be in Euros :P
comptable == accountant :)
thanks did not feel like googling :P
 
6 hours later…
06:41
hey
 
2 hours later…
09:00
@Simon, don't forget to fix Facebook Graph 2.0 in Minesweeper for Android!
 
3 hours later…
11:44
Not entirely happy, but at least I can learn something new
Just heard that for the project we need to use Django, possibly with React as view
11:55
I'll need to look if I can make a calculator with Django, at very least in Python3
 
1 hour later…
12:55
@skiwi calculator with a web-framework??
@Duga Sssh, I still have six or so more days to fix it!
@SimonAndréForsberg Well with ReactJS or AngularJS as view it could be possible, but that's exactly why I need to investigate
In pure Python3 it's of course possible
 
1 hour later…
14:13
hey all
@SimonAndréForsberg can you do this when you get a chance? If so I will continue to try to get cardshifter running in the browser chat.stackexchange.com/transcript/16134?m=20703991#20703991
14:33
@bazola hmm... yeah, I think I can do some work on Cardshifter...
i feel bad for neglecting it. time just flies by so fast though. easy to realize that when you are looking through the chat transcript and what you were looking for is 60 days ago
yeah, Cardshifter has been painfully silent recently. I am much to blame there as well, but the beginning of this year has certainly not been as planned... Only the visit to Ukraine went pretty much as planned.. but doing some work on Cardshifter should hopefully be good for me.
Hey!
I wish I could pull my own weight on Cardshifter dev, unfortunately learning Java has been painfully slow for me because "life", as @Simon was also saying
Don't worry about that @sᴉɔuɐɹɥԀ.
You and @Marc-Andre have been doing impressive work on the website
speaking of which, I should probably update that again soon.
@SimonAndréForsberg i definitely agree! setting that up is a lot of work
14:49
@SimonAndréForsberg The only thing that has changed is I moved the game rules from Github wiki to the site itself, that must have been... two weeks ago?
Oh shit that was on March 12, over 5 weeks ago! (good grief times flies)
hey @bazola and @sᴉɔuɐɹɥԀ and @Marc-Andre!
hey @skiwi
That's 36 hours logged for the SEP (Software Engineering Project) so far
According to study points I should only have done 28 hours, but that doesn't work that way as we're supposed to be at our office in uni every day :P
how are ya all?
That's almost a full time job work week!
14:53
Exactly
Pretty much from 9 to 5 every day
My only days 'off' are Tuesday morning and Friday afternoon to... follow another class
> fixed a problem with function evaluation and the order of operator evaluation, added even more tests
@sᴉɔuɐɹɥԀ oh? feels like the site has been more active than that. As said, time surely flies.
I set up a git repository for 3 or 4 people knowing git and 4 or 5 not knowing git, and surprisingly it hasn't broken yet
@SimonAndréForsberg How does your calculator work? Does it try to build some kind of tree?
@skiwi I have realized that it could be implemented using a kind of tree. It parses expressions recursively. For more information, see the documentation source ;)
Uh oh, source
Let's see if Python has a good documentation
15:11
> added support for ^ (Math.pow) operator
> added support for random parenthesis
> Sometimes you would like to inform someone that you have made a commit and what that commit contains, so you want to copy the link to only one message and paste in another chat. Currently each commit causes two chat messages, for example: 1. [Zomis/Calculator] Zomis pushed commit 1b78c459 to master 2. added support for random parenthesis I'd like to see something like this instead: [Zomis/Calculator] Zomis pushed commit 1b78c459 to master: added support for random parenthesis Feedback...
appreciated.
@Duga @SimonAndréForsberg Seems like we need a way to input that to SE chat for that
@skiwi Input to SE chat? What are you talking about? I don't see the problem.
@SimonAndréForsberg It's split now because there's no way to both feed a normal line and a quote to chat as a single message
@skiwi But the commit message doesn't really need to be a quote IMO
@SimonAndréForsberg I think it looks quite nice right now, but I do agree that not being able to quote the full message is annoying
15:24
and the only way to solve that is to make it into one message, not two. so it doesn't leave us with much choice.
Do we want to solve that? I think one-liners are ugly
I want to.
I think one-liners can be made somewhat nice as well
Then it should be (in DWI) an option per repo
I knew you were going to say that.
haha
15:30
> :+1: I like it. A lot, but I think #75 might be a prerequisite.
wtf?
@Simon @skiwi is the JS game logic still planned? If so, I think I might have an idea of a way I could contribute
> The pass statement does nothing. It can be used when a statement is required syntactically but the program requires no actio
@sᴉɔuɐɹɥԀ I think it is... one day
> I thought I had fixed this already but apparently I haven't.
@sᴉɔuɐɹɥԀ I plan on migrating the current Phrancis-game to JS, yes.
15:39
BTW.Work, I'll fill you in on my idea(s) in a bit
Maybe Python isn't that bad at all
I prefer Java or C#'s Lambda syntax though
16:02
> added support for running files and statements from command line
@skiwi Well, it is the 3rd most popular language on CR, I'm sure there's a reason for it ;)
Speaking of the cardshifter website I will probalby update the html/css. I've learned some new things that I want to update on the repo.
@Marc-Andre Ah sweet, keep me in the loop, I like to learn new things too :D
@sᴉɔuɐɹɥԀ Join our team for the SEP!
@skiwi Hahah, do I get to join in on the degree too? ;p
16:13
@sᴉɔuɐɹɥԀ Well, that might require some bribing
You actually cannot even get into our office without a registered campus card
Like they control access per student per room
I do wonder if that also automatically gives you access to elevators etc. in evening hours or weekends
Though we are only registered during regular hours I imagine
@Simon @skiwi Here are my thoughts on the JS part. I've been learning some JS lately, and realistically, JS is far more within my reach right now than Java. So, what I think I'd like to do is, first, go through what is already there in the JS branch, document thoroughly (so I can familiarize myself with the existing code) then start adding to it with your assistance of course
@sᴉɔuɐɹɥԀ Reading that source might be a tough job though
So it would help me become better at web dev learning more advanced JavaScript, all the while contributing to the game logic, which is something that is high on my list of interests into Cardshifter
Wow, this is rather magical
> The only solution is for the package author to provide an explicit index of the package. The import statement uses the following convention: if a package’s init.py code defines a list named all, it is taken to be the list of module names that should be imported when from package import * is encountered. It is up to the package author to keep this list up-to-date when a new version of the package is released.
> Package authors may also decide not to support it, if they don’t see a use for importing * from their package. For example, the file sound/effects/__init__.py could contain the following code:
@sᴉɔuɐɹɥԀ The JS code will probably primarily be used to call Java-side things. There are many 'Systems' existing already that is created in Java, with the possibility to 'add them to the game' from JS. It should also be possible to create 'Systems' within JS I think, but that is probably not something you have to do very often. Other than that, the JS will probably primarily be about declaring the available cards and their effects.
16:18
@SimonAndréForsberg Would making a list of the existing Java systems that can be called from JS be a reasonable starting point, then?
@sᴉɔuɐɹɥԀ Everythign can be called
(documenting what they do, what information can be passed or whatever)
@skiwi Well, the most important ones, at least as far as game play/flow is concerned, I think should be documented
@skiwi What directory is your JS stuff in, on the js branch? (I'm guessing)
@sᴉɔuɐɹɥԀ I think there might be one already.
Have a link to it, by chance?
16:28
The System - The Registered EventHandlers - The important Components or Classes involved - Description of what the system does
It looks like the Description part is missing on most entries. Think this is something I could work on?
@sᴉɔuɐɹɥԀ im not totally sure why I don't have a description for all of them. I made that list by going through the ECS written in Java though so you would pretty much have to read and understand the java code to write the description
a lot of the ones that don't have a description would have a description that is almost the same as the name of the system, but some of them are a bit more complicated i think
Ah, a bit over my head. I did notice the names are very good, so perhaps descriptions can be added only as needed
I tried to make the names somewhat self-documenting
Let me see then if I can dig into this JavaScript stuff; anyone know where it is on the repo/branch?
there's a part of it here but it's not finished: github.com/Cardshifter/Cardshifter/blob/js/extra-resources/…
It's a proof of concept, but not an actual implementation of a reasonable game.
16:37
OK, so it doesn't work so-to-speak
@SimonAndréForsberg this looks very similar to PhrancisGame, is that correct?
@sᴉɔuɐɹɥԀ exactly.
@bazola yes, it's the start of PhrancisGame.
As far as documentation, I'm assuming we would use JSDoc formatting, is that correct?
Not familiar with JSDoc
/**
 * Represents a book.
 * @constructor
 * @param {string} title - The title of the book.
 * @param {string} author - The author of the book.
 */
function Book(title, author) {
}
16:53
ok, so pretty much the same as JavaDoc. Approved.
Looks quite similar indeed
Let me branch that file and try to start documenting, and we'll see how it goes from there
@sᴉɔuɐɹɥԀ Eh... no clue
I should look it up
issue183-json-effects-cardloader
Hmm, I haven't seen enums in Python yet
f = open('workfile', 'w')
1148
Q: How can I represent an 'Enum' in Python?

sectreanI'm mainly a C# developer, but I'm currently working on a project in Python. How can I represent the equivalent of an Enum in Python?

17:06
@sᴉɔuɐɹɥԀ great ! I'll ping you when I'll work on it!
@skiwi for file-opening modes, it is quite common to not use enums.
All nice and well, but things like open don't support enums it seems
> There are plans to eventually move the PhrancisGame logic into JavaScript to make changing/modding game more approachable. The JS files need to be documented, starting with this one.

Location of file: https://github.com/Cardshifter/Cardshifter/blob/js/extra-resources/test.js

JSDoc reference guide: http://usejsdoc.org/index.html
@skiwi Why would they?
@SimonAndréForsberg Because it allows for easier autocomplete instead of remembering all combination, and Java does it that way, but that's about it?
This just feels like going back from Java to PHP lol
> Branching for JSDoc

Related to Issue #188
[Cardshifter/Cardshifter] Phrancis deleted branch JSDoc
Didn't mean to duplicate :)
♫ It's Friday, Friday, I like to write documentation on Friday! ♫
17:24
@sᴉɔuɐɹɥԀ Nobody said ever.
Oh hush ;p
I'm better at documenting than coding ;)
[Cardshifter/Cardshifter] build #797 for commit 720059d3 on branch JSDoc errored
@SimonAndr, your build reported bad status: Errored!
@SimonAndréForsberg lol
@Duga I think you have a fever
There wasn't even a commit on that branch....
@sᴉɔuɐɹɥԀ Ah @SimonAndréForsberg that probably means it was branched from a branch from which the last commit belonged to @SimonAndréForsberg
So technically it is Simon's fault ;)
@skiwi No it's not. Read the Travis output.
It wasn't able to clone the repo because the branch was deleted so quickly.
@SimonAndréForsberg Then I disregard my accusations.
aka Travis is slow
18:00
@SimonAndréForsberg There is not an @extends tag in JSDoc. Do you think @implements would be close enough?
sum(i*i for i in range(10))
What would that do in Python? ^^ Anyone can guess without Googling?
/**
 * @implements ZoneComponent
 */
var ZoneComponent = Java.type("com.cardshifter.modapi.cards.ZoneComponent");
^^ example
@sᴉɔuɐɹɥԀ probably
@skiwi sum i*i for all values from 1 to 10 (assuming range there is the closed one...)
so 1*1 + 2*2 + 3*3 .... + 9*9 + 10*10
@sᴉɔuɐɹɥԀ don't think all those variables need to be documented.
@SimonAndréForsberg Yep... Though what you see is a generator expression, which is used to create a generator, so sum is bein called on the generated elements, hence no lists are stored
It's really kind of like Java 8 streams
@skiwi yes, I am aware.
18:09
IntStream.range(10).map(i -> i * i).sum();
Or you need mapToInt not sure
I still think Java syntax is better, but I'm biased
@skiwi as it already is an IntStream, then .map maps from int to int.
ok ^^
@SimonAndréForsberg Maybe not. We'll see
Read Sections 1 through 10 of the Python documentation in 2 hours, hopefully one more hour
though /afk
What does ConfigComponent.java actually configure?
18:23
@sᴉɔuɐɹɥԀ It stores potential configurations for players/entities. Primarily, it stores DeckConfigs
18:40
> Separated Schema into dedicated SQL files for each table,
added schema for routing configurations, fixes #5 , see #4, #6
getting payloads at duga now
@simon What does ECSResourceMap do, short version?
finished...
18:44
> Allow adminstrating the navigation. Features:

- [ ] creating and editing navigation entries
- [ ] deleting navigation entries
- [ ] mapping navigation entries to "DIY"-Queries
- [ ] Single post
- [ ] Posts of a certain category
- [ ] Posts of a certain author
- [ ] Self-Written arbitrary SQL
- [ ] reordering navigation entries
- [ ] subnavigations
@sᴉɔuɐɹɥԀ stores all the 'resources' for entities. such as health, attack, mana, scrap, and costs.
basically all integer values.
@Vogel612 Quite a bunch there ^^
well it kinda piled up
and it's mostly relabelings anyways.
19:00
Should a calculator use a Decimal/Fractional class rather than work with floats?
[Cardshifter/Cardshifter] Zomis pushed 26 commits to gdx
@skiwi well... yes.
> added cardshifter-api.gwt.xml file required for GWT support
@Duga Yay, Cardshifter commits :D
3
19:01
@skiwi Mine only uses doubles so far.
> updated gradle properties
@sᴉɔuɐɹɥԀ Commits, yes. Working things? Not really.
I'm thinking about how to build an expression tree
Wondering where to start, just with reading in an expression having a + operator?
@bazola I have made some progress now on GWT support, but there are more things to be done before it is compilable. Not to mention runnable.
@skiwi 4 + 2 was how I started. Then I continued with 4 * 3 + 2 and 2 + 4 * 3 and made sure they got the same result.
@SimonAndréForsberg But you are not actually building a tree, are you?
I've read up a lot on Python now, I do still need to rea dup on unit testing with it
A calculator without unit tests won't happen
2
19:07
@SimonAndréForsberg i will try to compile and see if i can solve the next error it comes up with :)
[Cardshifter/Cardshifter] build #798 for commit 3b8431f9 on branch gdx passed
@skiwi technically, no.
@bazola I'm afraid there might be a bit too many errors left for you to fix on your own.
@skiwi Totally agreed. Extremely useful to run the tests. Even possible to use some TDD to know what features you should implement next.
@SimonAndréForsberg well, do you think it will be mostly converting java 8 stuff to java 6? and also rewriting anything that is totally incompatible with GWT
I'm still a bit lost on where to actually start when making a Python application
I think PyCharm will help a lot, it's time to start experimeneitng
Ping: Anything added dilutes everything else.
> Added markdown rendering capabilities
Created Administration skeleton, which requires a logged in user
19:19
@bazola No. At the moment it will be primarily about getting rid of the Jackson dependency in the cardshifter-api module, also getting rid of the log4j dependency. Also about replacing Arrays.copyOf and String.format with other alternatives. then maybe we can get somewhere...
@Duga Is that for your calculator, @skiwi?
Going for Python or Java with your Calculator?
the first offender is the byte serializer according to html:dist
yup, I'm aware.
@SimonAndréForsberg Yep
Python
We really need to know it for our project
@skiwi oooh, nice! (I don't even know how to unit test in python honestly)
Do you actually know Python?
19:22
I'd say I do, yes. Definitely not as well as Java though.
@bazola one more thing, once this stuff compiles, we need to figure out how to get the reflection things working... Did you manage to do make Java reflection and GWT work some time, or have I dreamt that?
@skiwi I don't know at what point you can say that you "know" a language, but I did do this in Python:
26
Q: We'll be counting stars

Simon André ForsbergLately, I've been, I've been losing sleep Dreaming about the things that we could be But baby, I've been, I've been praying hard, Said, no more counting dollars We'll be counting stars, yeah we'll be counting stars (One Republic - Counting Stars) The 2nd Monitor is known to be a quite star-happy...

And I have been using python a bit for some web-scraping since then.
@SimonAndréForsberg I'd say you need to know quite something for that by a first glance
Did you follow any guideline on how to setup the project structure?
@SimonAndréForsberg i don't think so, no.. although maybe I'm not totally sure what reflection means
259
Q: What is the best project structure for a Python application?

kbluckImagine that you want to develop a non-trivial end-user desktop (not web) application in Python. What is the best way to structure the project's folder hierarchy? Desirable features are ease of maintenance, IDE-friendliness, suitability for source control branching/merging, and easy generation o...

I'm seeing some ideas there ^^
> Update test.js

Documented module header and variable declarations.
@Simon ^^ at your convenience, would you let me know if you think this style of documentation is good, so far?
19:28
@SimonAndréForsberg looked up reflection, how much of that is there in cardshifter? where it has to look up a method from another class?
@skiwi Not at all. I just coded. It was a very small project so not much to structure.
@bazola the serialization for sending the messages between client and server depends on it.
> Updated .gitignore.
well i am picturing having to hand write that much the same as I have done for the mmo. its going to have to be string based web sockets if we want to have one server work with html/desktop/ios/android. or at least, i haven't found a way to get anything else working yet
the "byte" serialization stuff that I have looked at simply converts the byte to a string anyway, so i think it actually ends up sending a lot more data than just sending a string
@sᴉɔuɐɹɥԀ I.... don't know.
i think it is much more likely that people will actually play cardshifter if it is possible to play in a browser though
2
19:32
@bazola My goal is that we don't need to hand-write it as you did for your MMO.
> Added calculator module.
Though if my module is named calculator, then my class also needs to have a name, lol
@bazola totally agreed. Which is why I really want to make it work for HTML.
TTLS
(Time to learn Swedish)
well i have spent some time thinking about it, and i don't have any better approach yet. basically it boils down to an integer at the start that specifies the type of message, then it unpacks the message with a static deserialization factory method
i have 22 types of messages already and it was really fast to write
but of course I am open to any thoughts and suggestions you may have :)
@bazola hopefully, the existing byte serialization technique should work, once we can get that to compile for GWT.
That's my goal.
If it doesn't, then we will see where to go from there.
@SimonAndréForsberg OK, lol.
@skiwi yep. That was so confusing to me at first.
interestingly you can import modules and classes (with class-imports being more java-ish)
Spoken Swedish is damn hard to understand
"Kaffe är en dryck" sounds more like "Kafehendrik"
19:43
function declareConfiguration(game) {
	neutral = game.newEntity();
Should this be var neutral = game.newEntity();? I don't see neutral being declared anywhere in the module
@sᴉɔuɐɹɥԀ
@SimonAndréForsberg is there something I am forgetting to get the cardshifter-api module imported?
@bazola oh, right. One thing. For now, do an mvn install on the Cardshifter project.
I configured it to use the local maven repository instead of a remote one, because I have a feeling it will take some tries to accomplish this.
Should you work on this, or I, @bazola? (or both?)
well, i looked at the client and it is using regular sockets, so that is a non starter for gwt. i could convert that to use the libraries that i am using for web sockets, but the server has to be changed also for that to work
@bazola I am aware of that. Actually, the server already supports websockets alongside regular sockets. Just on a different port.
19:49
ah okay
I think that the socket part in LibGDX can be written in a quite flexible way. So that Android, iOS and Desktop can use regular sockets, and GWT can use websockets. If that doesn't work, than we can use the approach you use in your mmo.
but would those clients be able to communicate with each other on that server?
@bazola absolutely
14:53:57.723 [ERROR] [org.gradle.BuildExceptionReporter] Could not resolve all dependencies for configuration ':core:compile'.
14:53:57.724 [ERROR] [org.gradle.BuildExceptionReporter] > Could not find com.cardshifter:cardshifter-api:0.6-SNAPSHOT.
20:07
fixed that one with maven build
@Vogel612 Right, so how did you solve that?
I could be mistaken, but I've seen this in the JS file I'm documenting:
function declareConfiguration(game) {
Isn't it supposed to be:
var declareConfiguration = function(game) {
Or are both fine?
alright, now we are finally getting somewhere:
15:20:13.082 [QUIET] [system.out]    Validating units:
15:20:13.086 [QUIET] [system.out]       [ERROR] Errors in 'jar:file:/Users/baz/.m2/repository/com/cardshifter/cardshifter-api/0.6-SNAPSHOT/cardshifter-api-0.6-SNAPSHOT.jar!/com/cardshifter/api/ClientIO.java'
15:20:13.089 [QUIET] [system.out]          [ERROR] Line 11: No source code is available for type org.apache.log4j.Logger; did you forget to inherit a required module?
15:20:13.089 [QUIET] [system.out]          [ERROR] Line 11: No source code is available for type org.apache.log4j.LogManager; did you forget to inherit a required module?
> Added Calculator class that can evaluate an expression by parsing a string to an integer.
20:23
@skiwi mostly by importing the class....
And not just the module...
Think of imports in python as if they were static imports with a wildcard at the end in java...
> Update test.js

Documented declareConfiguration function
That's probably horribly inaccurate, but it jelped me wrap my head around it.
> Created application main class to run the calculator via the command-line.
Ok @Vogel612
20:33
Best... calculator... ever
class Calculator:

    def evaluate(self, expression):
        """
        Evauluates a string and returns a Decimal implementation thereof.

        :param expression:  The input string
        :return:    A decimal representing the string.
        """
        return Decimal(expression)
implementation???
what was I even thinking there
> Updated documentation.
I still think we lack "one extra dimension" in IDEs
The type of a variable is important, but we don't really want it to pollute the parameter list
Same for documentation, it's also important, but rather you don't have it pollute your methods
@sᴉɔuɐɹɥԀ No, it is supposed to be the first one. As it is.
@bazola I'm working on those errors.
@SimonAndréForsberg alright, cool
@skiwi It's not really pollution IMO.
Although Java and other C-like languages can be a bit too verbose in that aspect. In Delphi for example, you can do function someFunction(a, b, c: String): String to define multiple parameters at once of the same type.
20:44
Appareantly with Python 3.5 there are more possibilities for type hints
@SimonAndréForsberg OK perfect
TTGTB though
> Update test.js

Add documentation to the whole PhrancisGame module.
@skiwi Good night!
> removed Log4j and Jackson dependencies from Cardshifter-API, to get closer to GWT support
20:51
@Simon you seem pretty neutral about JSDoc, I was thinking of putting it up for review since it's my first time. Are you OK with this? Or would you rather just look it over yourself and call it a day?
@sᴉɔuɐɹɥԀ Can't say I have anything against you putting it up for review. I think perhaps parts of it is overly-redundant documentation, and parts of it are not entirely relevant, and parts of it can perhaps be formulated in a different way. Overall though, it's been way too long since I worked on that part of the code and there's so many things left to do there that I can't really care much about the documentation at this moment.
@SimonAndréForsberg Understood. I have to say for the most part I understand how the JS code flows the way you wrote it. To continue on that, would it be mostly a matter of having PhrancisGame.java and the JS file side-by-side and mostly "translating" from Java to JS?
00:00 - 21:0021:00 - 00:00

« first day (265 days earlier)      last day (3596 days later) »