« first day (264 days earlier)      last day (3597 days later) » 

00:00
RELOAD!
[retailcoder/Rubberduck] 2 commits. 1 opened issue. 1 closed issue. 6 issue comments.
 
7 hours later…
06:43
hey
 
2 hours later…
09:06
Мункинґ!
 
2 hours later…
10:42
hey @SimonAndréForsberg
 
2 hours later…
12:26
hey everyone!
12:38
Question about Spring MVC...
We (at our project) want to develop a separate frontend and backend
Would it be wise to develop them both in one .war file?
Or how should we approach that?
12:49
@skiwi If it's one project, one website, one "web application", then I think it should be in the same .war file, yes.
Spring MVC already makes good separation between front-end and back-end already. No need to separate it even more.
@SimonAndréForsberg We are having some issues on how to set it up though
There are now already multiple view resolvers involved, but do we need those at all?
I'm looking for a minimal configuration for what I just described
Minimal configuration -> Spring boot
I'm feeling like we are over-doing this with Spring MVC, if we only want to use controllers and use ReactJS for frontend
Why would you be over doing it ? Spring MVC can act a REST API
Yeah, but setting it up is a hell
That's the issue I'm having right now
13:01
You can use Spring BOOT since it require no config at all
But if you just return json you don't really need any cofniguration
You do need the mvc annotation driven, etc. right?
Also, where should the html/js files be located? Under sources or resources then
Already looks complicated to start with :/
Sometimes I wonder @skiwi if you have very high demands for how simple things should be or if you are just lazy....
(no offense)
Well I've never seen any easy configuration with Spring MVC unless you use Spring BOOT
13:19
@SimonAndréForsberg It's not really just me in this case, I need to explain it to others, and the easier the better
But it's not that hard I'm sure, it still the complete config of a web server... those are still somewhat complicated
I can agree with it, not sure how to convince the others though
Not sure what Spring BOOT is though, still need to look into it
Spring BOOT is a standard config for most web server that wire everything you need itself
it hides all the config from you
Others want to prototype at this point, but I'm not quite ready yet as I'm busy with other things too
If I could set it up all myself then I could probably get it done
14:01
@skiwi If you could do it all by yourself it would not be a team project
6
Of course, yea
14:23
Monking
@skiwi Some times the better way to understand something is to do it by yourself. If you let someone do it that would be one less person to explain how it works.
3
Hey @sᴉɔuɐɹɥԀ
I see there's a KISS vs. DIY conversation going on, interesting :)
@Marc-Andre Let me know if/when you have a minute for a Bootstrap/CSS question
yup shoot
Source file I'm having issues with: github.com/Phrancis/phrancis.github.io/blob/master/…
.carlin-top-menu {
	margin: 20px;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
^^ The intention of this is to Center that menu block
  <div class="carlin-top-menu">
    <div class="btn-group">
        <button type="button" class="btn btn-warning btn-lg">FAQ <span class="glyphicon glyphicon-bullhorn"></span></button>
        <button type="button" class="btn btn-warning btn-lg">Discography <span class="glyphicon glyphicon-headphones"></span></button>
        <button type="button" class="btn btn-warning btn-lg">Bogus Quotes <span class="glyphicon glyphicon-warning-sign"></span></button>
        <button type="button" class="btn btn-warning btn-lg">Real Quotes <span class="glyphicon glyphicon-ok"></span></button>
I've patched it with a <center> around the menu temporarily, as I could not get it to work the "CSS way" - Do you know why? When I remove <center> around the menu block, it becomes left-adjusted
14:40
try align: center;
do you have a live version that I could see what is going on live ?
@sᴉɔuɐɹɥԀ in the css for the menu, add text-align: center;
@sᴉɔuɐɹɥԀ The div is centered.. just not what is inside the div
and then get rid of the <center> tag
14:45
Do as @SimonAndréForsberg says and align the content of the div (text-align should do this)
OK
Thanks guys I'll try that
Did you check with the console to see how things were behaving ?
Oh that's a good idea, I need to get in the habit of having that console open
@sᴉɔuɐɹɥԀ yep you would have seen that your div was centered!
hey all
14:55
@bazola Morning!
has anybody set up a server with SSL? its looking pretty complicated
also expensive
there are free ssl certificates
15:29
this is pretty cool for running some quick java in browser
they have other languages also
ideone too
@bazola Doesn't work in IE (big surprise!)
Ideone does - Kinda.
16:04
We might still decide to use WebSockets instead of REST API
16:26
> added comment for a possibly better way to define cards
> converted to IntelliJ and Maven
> removed unnecessary subdirectory
16:37
@skiwi ncie idea would like to see that
16:51
Ping: Favor focus over features.
4
@Duga lol, is it just a coincidence that I got that Zen message?
17:26
Pfff, traffic jams suck
On the server I want to list all *.tex files in a directory, try to run a pdftex command on it and then publish them to a webserver
Shouldn't be that hard, right?
Wasted like 4 hours on that using Shell scripting... I'll just give up and make some Java program for that
I might also decide for Duga Web Interface to use WebSockets rather than a REST API for the web interface
It's on hold anyway... really busy with university
In case anyone else wants to experiment with WebSockets as well... Why not make a calculator using it? lol
Wow websocket looks like your new shining thing :P
Haha
If it's really better than REST API, why not ;)
@skiwi Ummm... websockets for that...? How/Why?
@skiwi It's not better... you're jsut connected at all times.
@SimonAndréForsberg you get the data from your websocket and let the js update the view
@SimonAndréForsberg Why? Because it's possible!
17:41
feels more like the job for an AJAX request...
@Marc-Andre I still have to figure out about that, all I can is a real pro is that you can push messages to a client rather than poll an url
@SimonAndréForsberg That's exactly what WebSockets replace
@SimonAndréForsberg depend on what you're doing... if you're making a chat(like SE chat) websocket is the way to go. But for managing resources like models not sure
If we don't talk about pushing messages to clients, then I'm not claiming anything about WebSockets being better than AJAX, though I want to figure out how it exactly works
@skiwi I understand, just don't see the need for a keep-alive websocket connection for this.
@skiwi Which is nice when you need a constant update.
17:44
which with regards to DWI, does not seem to be necessary...
DWI is not a chat.
unless DWI is always checking on state for a tons of informations and you don't want to refresh your page to have that fresh new information
Which AFAIK, it doesn't need to.
Or maybe there is something I don't know about websockets.
18:23
@SimonAndréForsberg Well, another way to think about it is that instead of doing multiple requests on a website you are just doing one and leaving that open, could be more efficient
@Marc-Andre I think you need a "constant update" when you are working with a GUI activately
Being able to push data does open some interesting new options in GUIs in general I'd say
Whether it's useful with DWI or not, that I don't know
@skiwi constant update != instant update. constant update = something that is updated repeatedly, often.
@SimonAndréForsberg But when you are navigating through the GUI you are all the time asking for data from the server
@skiwi I do not argue that it's not interesting just that is not necessary ! I can update a GUI without making any request to a REST API. I only need the call to update/save/delete information
@skiwi It depends what you means by data
@Marc-Andre If you consider AngularJS, then the model will need data which causes the view to update, that is some data, though its'not heavy-weight
data contains css/html then sure... but I'm talking about data like some data I would store in a DB
18:27
@skiwi Sure you are, but normally when you are using a web application, each of those navigation clicks result in either an page request or a AJAX request.
@SimonAndréForsberg That's the thing though, those AJAX requests (or more specifically model updates if using AngularJS, etc.) can be sent through the WebSocket
If you want to go for a Websocket solution, then you'd need to write server code for that, which just makes things more complicated, not less complicated.
But you need to same for REST API, right?
@skiwi The thing is you won't save anything by using a websocket, because the user already made an action. I think (I can be really wrong) that the nice thing about websock is sending data to the client without any action from his part.
For a REST API I'd do a controller in Spring MVC with four-or-so different methods: add, edit, view, delete.
18:31
One thing that stood out to me was that instead of an AJAX right, you had a WebSocket open on say localhost:8080/api and then you could just call ws.getUser($scope.userId) for example and then your response will come in time
@Marc-Andre I agree about that.
(And getUser is then a server-side method on the api Controller)
@SimonAndréForsberg I don't think using a websocket would be much more difficult... I think it's would mostly be configruation.
If performance doesn't matter and you might need to push data to the client (rather than polling) then WebSockets doesn't seem to hurt over REST
@skiwi ws.getUser($scope.userId) ? AFAIK websockets can only be used for sending and receiving data, not calling remote methods.
18:32
@skiwi It can be much difficult to scale websocket than a REST API
@SimonAndréForsberg This is just some angular thing... I guess it does a "websocket request"
Ok. I am not familiar with angular.
@SimonAndréForsberg The getUser is like your getUser method in a RST API, it's probably some library though that allows yout o call a method like that, not quite sure on that
I may be wrong but managing simple conenction is easier than managing websockets
I just can't help but get the feeling that you're trying to fix one problem by adding two new ones.
I'm still just exploring
At the same time I'm thinking abou thow it would actually be useful to DWI, and also what arguments I could bring to my group members to use REST over WebSockets
And I can't really find the latter there
18:35
REST API and AJAX calls are older and there is more support/projects that have successfully worked it/
We luckily don't need to support old browsers though
No that's not what I said !
You mean framework support?
You will find more documentation and examples fixes bests practices because it;s not new
WebSocket frameworks seem to be mature enough when I just looked around, but for REST API there are way more succesful projects
18:39
People have used it sucessfully for some times. Web sockets are still "young"
Perhaps DWI will stay with REST
or I could abstract over the communication mechanism via my own service object
I feel a bit bad about working with Python3 through googling rather than actually learning
Why ? Do you need to learn it or you need a script :P
But then again, I actually did the same with Bash
@Marc-Andre I need to construct a script myself by using snippets
But I mean when coding in Java I know all standard libraries, etc. and don't even need the web
@skiwi so Googling is fine :P
18:55
^^ Yeah, I can live with it
I'll probably try to get a prototype done tonight
Have no access to the server from home though, so that will wait till tomorrow
I still need to write the SCMP tomorrow though :|
That's the Software Configuration Management Plan
Pretty much what version control you use, what workflows you use, what the related processes are, etc.
@skiwi Sounds exactly like what I did when I learned Python...
@skiwi I hope so.
Whenever I learn a language, I tend to google a lot about how to do this and that in that language (adding to an array, searching in array, looping, filtering, everything!), and then hopefully the next time I need to do it I remember how I did it last time.
3
19:14
What Mast said in the 2nd Monitor still doesn't make sens to me but well, what good would it make :P
> added gitignore and basic project POM
> added Expression and ValueExpression, along with CalculationException
> added OperatorExpression and CalcContext
@skiwi It kind of looks to me like you're doing all the work, so far...
> added main method that continuously asks for input from System.in
> added simple CalcTest
> added addition test
well I think I got this mess working:
public class SimpleCipher {

    public char[] plaintext = new char[] {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i',
                                          'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r',
                                          's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
                                          'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I',
                                          'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
                                          'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
implemented a cipher that works with the full qwerty keyboard based on some paper i found online
here is how I tested it:
private void testCipher() {
    SimpleCipher cipher = new SimpleCipher();

    char[] encryptedMessage = cipher.characters("combat", "messagefool#12fool%%$14coolness", true);

    System.out.println(encryptedMessage);

    String stringToDecrypt = "";
    for (int i = 0; i < encryptedMessage.length; i++) {
        stringToDecrypt = stringToDecrypt + encryptedMessage[i];
    }

    char[] decryptedMessage = cipher.characters("combat", stringToDecrypt, false);

    System.out.println(decryptedMessage);
i think it should work with keys that contain numbers and symbols, but it currently doesn't
@bazola You always describe your code as a mess! I feel like you're never proud/happy with your code. Or it's a bias and you just post the code you don't like here
19:24
i like to post the messy stuff :) i just consider this one a mess because of all of those counter variables (i, j, n, m, r, s, bleh)
also lots of magic numbers
what stopping you from naming them something meaningful instead of using i j k l etc
because even though i implemented the algorithm in the white paper, i don't really understand it :)
that a good answer eheh :D
@bazola Cryptographic algorithms tends to be very complicated.
@sᴉɔuɐɹɥԀ Ah haha no by far not, the others have done a lot of documentation
Setting up a development server is a lot of work though, but I do it together with a teammate
I don't feel like reading docs.python.org/3/tutorial
19:31
@SimonAndréForsberg still seems less complicated than ssl though! although I know that it is dangerous to roll your own
I don't feel like working anymore (for the day)
unfortunately if I use this with GWT, it seems like it will embed the cipher key and implementation in the javascript of the webpage..
@bazola If you like to shoot yourself in the foot.. :P
> added Operator class and CalcContext.createDefault() factory method
> added multiplication support and precedence testing
@Marc-Andre Then go home? :p
19:33
@skiwi I'm already home :P
@Marc-Andre Then go to work?
How will I be able to go to bed at 11pm, there's still so much to do!
I'm workin from home :P But I'm tired and I jsut got a new problem and I don;t want to deal with it :P
> added support for negative numbers
@Marc-Andre Is there a coworker that can deal with it? :p
I'm the co-worker who deal with the problem at the moment :p
19:51
Yay, made my first very simple Python3 program
2
> changed to parameterized test
> added subtraction and division operators
> added test for a quite long input with many different operators
20:32
@skiwi Nice!
> added basic support for functions, added 'abs' function
> fixed off by one error and added test for it
> added support for '-' as a unary operator
> added more info when CalcTest fails with CalculationException
20:51
@SimonAndréForsberg Looking at your code, is this what we would call "overloading"?
    public Operator(String key, DoubleBinaryOperator operator) {
        this(key, operator, null);
    }

    public Operator(String key, DoubleBinaryOperator operator, DoubleUnaryOperator unaryOperator) {
        this.key = key;
        this.op = operator;
        this.unaryOperator = unaryOperator;
    }
i think a casual hacker would have a lot of trouble figuring out the enrypted text here
xltkfqdt ol pgt
username is joe
+`[[:=}@q&[qY34Tqyu^`^`i
password#is#THIS#*(haha)
p78o?/QW8o?/QWp74?/QWp78i3?/QWp4op
this!@#$is!@#$the!@#$third!@#$test
@sᴉɔuɐɹɥԀ yup, indeed it is. Overloading, and in this case also constructor-chaining.
21:18
I see, neat
21:44
> fixed problems with evaluating functions causing other expressions to be skipped, also added tests for this case
22:10
> added basic support for variables
 
2 hours later…
23:41
@bazola I would not underestimate any hackers... there are now really good tools to decrypt anything...
Loki Astari vs. Simon André Forsberg: 4274 diff. Year: -1492. Quarter: -193. Month: -193. Week: +219. Day: -35.
200_success vs. rolfl: 420 diff. Year: -286. Quarter: -129. Month: -129. Week: +157. Day: +65.
My girlfriend recevied an email for a return of cash for the taxes of 219 euro ! That's except that's totall bullshit
but it still funny :D

« first day (264 days earlier)      last day (3597 days later) »