« first day (1012 days earlier)      last day (3303 days later) » 

15:01
17 messages moved to Sandbox
But looks like if I paste anything into the edit box of the "Javascript loop to decrement float" question, it crashes. Even if I have nothing selected and the text I'm pasting is "a"
That is pretty weird, does it crash doing the same in another browser?
Edge almost crashes when pressing Edit
and becomes unresponsive when using the edit field in general
cursor doesn't show, CTRL+Z takes 3+ seconds,
it does contain a very, very long line.
Hi @user
welcome to the 2nd monitor, chatroom for this site
Hi @Pimgd
so two things about your question
15:07
Hi all
sure
first, I thought it was gonna be shorter,
usually what you'd do is snip your code down a bit, like to a single class
would you like me to try that?
and then say "I don't like this one method", etc... so it's a self-sufficient module
well... yes, if possible
sure
Like, the first example was too short, cuz it's stripped down to the point of where it could be code from a game
15:09
give me some time
and the second is technically too big
you could get it reviewed, but it's no longer about the loop anymore
it's more about a massive... thing... that probably is your entire project
The goal of cutting it down is to provide enough context that we can answer with XY problem-style answers
well, this is from an addon, which listens to http requests, etc, so we could start from the trigger code maybe... and that could keep it down
yes, that would work
it was actually supposed to be about for loop with floats problem, but yes, that sounds good
"it sends an http request" -> just putting the call there and not the implementation would work
e.g. not doSomething() but load.http(coverUrl.sized(stats.embeddedObjectSize()));, etc...
15:11
that is a good idea
any variables that you do use but don't provide in code, explain in the surrounding text
like "I've got a statistics library/class/set of functions I made, it's stats in the code below and handles ..."
that way you don't have to include stats.js but we can still understand what it's for
The second point is that you've managed to crash my browser somehow =D
Whenever I go to edit and try to paste anything chrome just crashes
It's probably because of this 1 really long line in there, but that's pretty funny, didn't know that could happen
but yeah, cut the scope of your question down to either a single function, class, or module and you'll get better reviews
for instance, I was wondering whether you really needed to iterate
and whether you couldn't just, instead of "make it go down by 1! make it go down by 1! make it go down by 1!" say "make it go down by 3!"
wow... I cut the RAM in half and it still works just fine
@Vogel612 does it consume half the memory or did you grab a pair of scissors and...
and I don't get out of memory's with just spotify and chrome open
@Pimgd I took out one bar
with scissors?
15:17
with biological pincers
seems that one bar was a little funky
It got through memtest, and I still need to stress the system, but ...
memtest to the -
okay, apparently not
Oh and I'm not on all peripherals yet..
possible answer invalidation by user on question by user: codereview.stackexchange.com/posts/119508/revisions
@Duga shhhhh is ok
in FF, it works...
Zak
Zak
15:20
@JeroenVannevel At least they're not german.
anyways, it is now toned down to just one class
please forgive the browser-crashing.
Haha the browser crashing is not your fault at all, it's not your code, it's stackexchange website itself
3
Looks a lot better now, you've highlighted the part you find important at the start, and afterwards comes the implementation which provides context,...
hmmmh randomUrl makes me wonder, though, is it possible to give that a short description?
let me try
doesn't need implementation, just what it's for
like, why does it need to be random, why not always the same url?
then after that the last step of editing is cleaning up the tags and question title
15:26
" 'creates cover traffic, up to predetermined parameters'"
looks like that needs to be converted to a title for the question
See this code. Please note that using array with undefined (unlimited) rows, can however exhaust memory (also increasing memory limit) — fusion3k 43 secs ago
ok, explanation of randomUrl is there. As for the title, feel free.
something like... "Creating cover traffic by calling random urls - Javascript loop to decrement float"?
... also that sounds shady, but eh, I guess you could be testing some log analyzing tools... not gonna dig into that
0
Q: Excel VBA - Copy one row to multiple rows based on multiple dimensions (columns)

TesterNeedsHelpI have 10 columns and in column A - E is data, columns F - J are teh dimensions. e.g., Date, Name, Address, City, State, Zip, Text A, Text B, Text C, Text D, Text E. I need to look at the row and if Text A = "A", then copy row with columns A - E and F being the identifier "A", then continue throu...

... that was a question what it's for, right?
Tor traffic can be analysed using website fingerprinting. This is an attempt to mitigate.
Anyways, thank you very much for all the effort and the answer.
15:34
that's some pretty cool stuff
I've updated my answer a bit, after thinking about it
think it would be better to first roll
then based on that, either 3 iterations or 4
because what I said earlier was "do the iterations then roll" which is stupid, it's like
for loop {
 do the thing
}
if roll success {
 do the thing
}
and now it's
if roll needed && roll success {
 iterations + 1
}
for each iteration {
 do the thing
}
That is very neat, as it avoids the code repetition yet still loops over integers.
which means if "do the thing" is really long (say, 5 lines), you don't have to duplicate it
Yes
exactly. thanks so much
Well, you could accept my answer, or wait a bit for other answers to arrive regarding other parts of your code
but you already did and I'm being slow
You answered the main point, so the accept was justly earned.
15:39
ah forgot to look at your profile, 2.5k stack overflow rep, you know how the system works
well, hope to see you next time with another question if you need help =)
well, yes, but still different sites are different, so your help was very appreciated.
now I gotta get back to my own work though, I always somehow manage to let that fall behind
My coworkers started reviewing my code
yesterday I learned that you can also use single quotes in json to describe strings
I mean, it sounds obvious
but when you do stuff like private static final String objectOneJson ="{\"key\":\"Key1\", \"values\":[{\"value\":\"Value1\"}]}";
you feel kinda dumb when they tell you that you can just replace \" with '
@Pimgd go away, that's horrible
you shouldn't hardcode JSON into your Java source code
but it's test code
then put it into a test resource
15:43
... test resource?
src/test/resources/com/example/package/TestData.json
but doesn't this decouple code and json a bit
and then load with getClass().getResource("TestData.json")
it makes it harder to verify
@Pimgd meh. depends on how huge your json needs to be
15:45
things like "{\"key\":\"NewKey\",\"values\":[]}" at the smallest
also readability suffers severely when you quote it like that
and "{\"key\":\"aKey\", \"values\":[{\"value\":\"Value1\", \"createdByRef\":1, \"createdOn\":\"2015-01-25T00:00:00.000\", \"lastEditedByRef\":1, \"lastEditedOn\":\"2015-01-25T00:00:00.000\"}, {\"value\":\"Value2\", \"createdByRef\":1, \"createdOn\":\"2015-01-26T00:00:00.000\", \"lastEditedByRef\":2, \"lastEditedOn\":\"2015-01-27T00:00:00.000\"}]}"; biggest
also holyshit am I replacing that with single quotes
cuz ewww
I'd cry if I saw that in my code.
Monking btw
not sure why, but... shouldn't your keys be non-quoted?
I think JSON keys are supposed to be quoted.
15:47
"{key: 'aKey', values: [{ value: 'Value1', createdByRef: 1, createdOn: '2015-01[...]"
hmm... they are quoted in the RAW though..
they're allowed to be quoted, that's for sure
They can probably be quoted or non-quoted. It doesn't appear to matter I guess.
otherwise how'd you do {"!:?":"value"}
special character-keys like that
that's valid json, right?
it seems the RFC says "A Key is a String"
{
	banana: "value"
}
Error: Parse error on line 1:
{	banana: "value"}
--^
Expecting 'STRING', '}', got 'undefined'
So they MUST be quoted
15:51
Well. Quotes it is I guess.
you're just used to comfy-land
where they do all the hard quoting work for you
that means you can't single-quote them, though.
@Pimgd I always used quotes when I had to write JSON.
I am single quoting them
right now
one of my tests is failing because of another refactoring though
-1
Q: Python 3.4 SQLite Shop+storage database

NikitaI'm trying to make some database for sort of "online shop" (database access will be use terminal). Things goes good if I don't use OOP in my code. This what I have without OOP (somehow it does work): import sqlite3 as lite import time from datetime import date def main(par): if par == "new...

15:59
mocks make tests brittle, yeah
wtf
 mvc.perform(patch("/personalSettings/bKey").contentType(MediaType.APPLICATION_JSON).content("[\"a\", \"b\", \"b\", \"c\", \"e\"]"))
                .andExpect(status().isOk())
                .andExpect(content().string(""));
works
replace with '
and you get a massive stacktrace about jackson exploding everywhere
maybe it's converting to char
sigh posted a selfie on my linq provider, based on changes I made yesterday
Caused by: com.fasterxml.jackson.core.JsonParseException: Unexpected character (''' (code 39)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: java.io.PushbackInputStream@34aeb4f0; line: 1, column: 3]
hmmmh
there you go,...
single quotes aren't allowed
@Mat'sMug that thing is huge and very specific, you know?
but my coworker showed it and there it worked
yeah yeah
16:03
looks like he was talking about the library we use, JsonAssert
Can it perform heartsurgery fly a spaceship wrap a crappy DB API?
3
it accepts '
@Pimgd non-conformly, btw.
Seems like this is more of a question for codereview: codereview.stackexchange.comJohn Coleman 29 secs ago
I think you can get Jackson to take it too, though
16:04
Can I post some crappy code so we can all just look at it in awe of "wtf"?
sure thing.
for (var i = 0; i < browserLanguagePropertyKeys.length; i++) {
  var language = window.navigator[browserLanguagePropertyKeys[i]];
  result = GetLanguageFromList(language);
  if (result != null) {
    break;
  }
}
// if still no language found search for country-neutral
if (!result) {
  for (var i = 0; i < browserLanguagePropertyKeys.length; i++) {
    var language = window.navigator[browserLanguagePropertyKeys[i]];
    result = GetLanguageFromList(language)
    if (result != null) {
      break;
Herp derp. Let's iterate an array, and if we don't find what we want, let's iterate the same array again!
Did you ever copy paste so hard that you forgot to change the bit you copy pasted?
4
@Duga needs cleanup, but seems on-topic. it's rather short though.
lesseee, it goes over an array... and then... finds a result... wait wat
@Pimgd yep. there was a loop like this in there 4 times in a row
each of them doing the exact same thing
16:07
hang on xkcd
Well, I guess, if you at first you don't succeed.. try, try, try again.. :s
function panicFind(language)
StackSort connects to StackOverflow, searches for 'sort a list', and downloads and runs code snippets until the list is sorted.
4
it's panicsort, but now trying to find a language
return [1, 2, 3, 4, 5];
lol
@Pimgd the hover text is gold
I feel like that's the future of utility functions
16:09
lmao
you write test cases + a descriptive string
then hit
2
and it will find you a solution
Chat markdown sucks.
then @skiwi hacks the algorithm and it just returns a neural network trained to do what you wanted it to do based on the test cases
5
And we'll call it the true TDD
@DanPantry but what if GetLanguageFromList has side effects?
then it could actually work
16:17
@Mat'sMug Someone actually implemented that.
@Pimgd It doesn't
It is, surprisingly, a pure function
@Roujo haha of course someone did
lol
@DanPantry yes but I'm trying to be optimistic here
> Is it safe?
Uh… it evals both user input and random code, unchecked, from an external site. This is what security-minded folks would refer to as Very Bad™.

That being said, for what it is, it should be relatively harmless. The site will only fetch accepted answers, and it only uses answers that were posted before the xkcd was released (meaning that if someone posted malicious code now, it wouldn't matter). It also searches for potentially-malicious code (like the word "cookie"), and skips those. It's definitely not the safest thing, however at most it would probably just crash your browser.
16:19
@Pimgd You don't get much more optimistic than an infinite loop which I have somehow.
@Mat'sMug it's only as bad as you make it
if you don't mind getting haxord (so to say) then it's not that bad at all
lmao i just worked out why i've got an infinite loop and it's so stupid
gah
It's okay to make a derp
no, it's not my code
just... don't commit it
16:22
By "fixing" the code, I've managed to unbind the duct-tape that was holding it together
or the build server makes a loud 'doh!' noise
I believe they call that spaghetti code
(that's what the buildserver does here, anyway, if the build fails)
Okay so it turns out a lot of code in the solution does something like this:
LocalisationSvc.WaitForLanguages().then(() => { ... })
So the spaghetti is this: I was cleaning up the code and making LocalisationSvc pure because no one mentioned (and there'sn o comment anywhere) that WaitForLanguages should only ever have its promise resolved once
So when I made WaitForLanguages not rely on a stateful variable inside LocalisationSvc, all of these bits of code that called WaitForLanguages suddenly now could all send a http call individually
tldr 500 calls to /api/languages
@DanPantry refactor -> rename -> WaitForLanguages -> StressTestAPI
6
16:28
@Pimgd couldn't star that fast enough
The worst thing is thsi pattern is used all across the application
0
Q: Regex to first match, then replace found matches

John BustosIn my C# program I am using Regular expressions to: Loop through a list of possible words in need of replacing. For each word, to find out if a string I am given has any matches. If it does, I perform some (slightly costly) logic to create the replacement. I then perform the actual replacement....

well, at least that way your api is stresstested properly (also thsi)
help I have "everything is a nail" problem
Remark: If code already works and you're interested in a review, it might be a candidate for Code Review. — Zeta 27 secs ago
as in capt obvious is gonna post something
and I spent the past few days learning angular
and I'm like "you could use angular for that!", it'd save you all the codes
0
Q: JavaScript Todo App

OhsikI wrote a todo app with JavaScript and want to have it reviewed to see if I can make it better. I think my JavaScript is messy and can be improved a lot. Please share your thoughts and way to improve this (I think my JavaScript can be half of the code to do the exact same thing). Here is my app....

16:41
@CaptainObvious "you could use angular for that!"
but maybe that's my version of "needs more jquery"
@CaptainObvious You could use Rubberduck for that.
5
@CaptainObvious Ouch
@Pimgd Don't
Go learn React instead
Angular 1.X is going to completely change in a few months and Angular 2 is (imo) pretty crap
@DanPantry but our big app is using angular 1.X
Angular 2 is React and Redux + stupid proprietary junk like RxJS
So does ours
also I am new in frontend land
16:45
$translate.refresh('EN').finally(error => console.log(error));
> undefined
having previously (perhaps mistakenly) lifted my nose condescendingly at front-end
Okay, cool, so I get an undefined error. Thanks ngTranslate.
going "humph, I don't need to learn that, that's for website makers, and I don't make websites."
not the smartest idea ever
Meh, yeah, and then you found out that everyone is building stuff in HTML, CSS and Javascript?
no I knew that
16:46
Like you can get desktop/mobile apps now built purely in those techs
(Gitter, Discord being two big ones)
but every time they say crap like "maaaan did you know about promises yet"
I'm like what is this
Do you have any familiarity with C#?
oh, it's a listener
Nope.
A Promise isn't a listener
It's a representation of a task that may at some point in the future respond
That point in the future could be next tick or in 42 years, but it will always be async
and it will always have a single return value
okay, it's a like a java thread with listeners and etc etc
16:48
Think Future<T> from Java.
Future
but a lot of the time
They can be composed in similar manners, too.
I hear about the super duper awesome new stuff in frontendland
and it turns out to be stuff that already existed in backendland
but rebranded under a different name.
Why isn't it the same as a Task<T> then?
0
Q: Implementation of stack

Eugene Shymko Task: Create a class RPNStack which represents a stack of objects of type Node. Class RPNStack contains only one private eld top of type Node. Objects of type Node represent data that are pushed on the stack: each object contains in its eld val a double and in eld next a reference t...

16:49
@JeroenVannevel It is the same as Task<T> more or less
@Pimgd I'm really looking forward to async/await in ES7
Because the analogy suddenly skipped C# and went to Java
At least that isnt' rebranded ^^
@JeroenVannevel Because @Pimgd's profile has lots more Java than C#
roger roger
16:50
@JeroenVannevel that's what the new xcom2 soldiers say
beats 'Rodger dodger' though
that was getting on my nerves
I just uncovered a Frozen exception handler.
@Pimgd Is that game good? I was considering buying it.
The more I look into this code the more I am convinced the money we spent on 3rd party devs was wasted.
I dunno, my brother plays it, I just like watching him get horribly rekt
16:51
Frozen exception handler: try { } catch (e) { /* let it go */ }
3
@DanPantry they're called 3rd party devs because they program like devs that just had 3 parties
4
basically very, very, very drunk
probably the parties were over scoring the massive contract in the first place
"They're paying us WHAT?"
I'm not privy to how much they were paid
and then party time
But I know that we were going to sign for a support contract until I told my boss to, well, not do that
boss pls
TT GH & QW
Zak
Zak
16:57
17:14
1
Q: Why are we [still] not on the footer?

Mat's MugThis completely feels like asking for an underground parking spot at work, but... there's at least1 one spot left in the page footer area, in the section we'd belong under: Why isn't Code Review on there? 1 looking at the Life/Arts section it seems there are actually at least 4 spots left.

possible answer invalidation by Rutvik D Mehta on question by Rutvik D Mehta: codereview.stackexchange.com/posts/119150/revisions
17:49
screw that, I don't need my provider to support GroupBy. client code can just call ToList and use Linq-to-Objects for that. First/FirstOrDefault, Last/LastOrDefault, Single/SingleOrDefault, Any and All are all handled now though. this is really getting somewhere really cool.
17:59
@Mat'sMug sounds like it!
Really interesting last paragraph.
possible answer invalidation by Ohsik on question by Ohsik: codereview.stackexchange.com/posts/119520/revisions
@Duga seems okay to me
for now
@Hosch250 Brushing off all the grammatical errors, it is an interesting article and definitely something I have experienced
18:17
0
Q: Add WeekDays to Date

CyrilWill the below code work for adding Weekdays in all possible scenarios? eg, If I add 4 days to a "Thursday", the result should be next "Wednesday". var addOneDay=function(date) { var result = new Date(date.getTime()); result.setDate(result.getDate() + 1); return result; }; var addWe...

0
Q: Nodejs twitch bot, writing good javascript

user97279Javascript is a language where it's really easy to fall into bad habits and writing bad code that is hard to maintain and extend. I have made myself a twitch (irc) bot completly written in node and I feel like I abused modules and generally didn't follow any good developing pattern. But how do I...

@CaptainObvious "Will the below code work for adding Weekdays in all possible scenarios? " lol the naïveté
nothing ever works in all possible scenarios, especially home-made datetime functions
3
or LINQ providers
@Mat'sMug Did you fall into the trap yet?
18:21
nope, not yet
Insert was split into Insert, BeginInsert and FinalizeInsert, but other than that... looks like a solid solution
    /// <summary>
    /// Inserts a single new record into a flat view, or of a detail record in a composed header/detail view.
    /// </summary>
    /// <param name="entity">The entity that contains the key field and values to insert.</param>
    public void Insert(TEntity entity)
    {
        BeginInsert(entity);
        FinalizeInsert();
    }
the header/detail thing is why I need to split the operation
and I had to add a new KeyAttribute to specify where a view's key is and how it's generated
0
Q: Asynchronous Javascript Patterns

user1477388I am working on a codebase that operates in the following manner: (function() { var controller = function() { // create models this.createModels(); // set event listeners this.setEventListeners(); // fetch data this.fetchData(); } controller.prototype.createModel...

0
Q: Are questions asking for opinion regarding all edge cases on topic?

Aseem BansalI have been away from code review for some time and not sure on the scope agreed upon in the community. So is this question on topic or off topic? Basically the below is on topic or not? Will the below code work for adding Weekdays in all possible scenarios? I understand that reviewer ca...

@CaptainObvious Does that look example-ish to anyone else?
18:46
Hmm this one is a bit of grey area, anyone want to give input?
@Phrancis No, the real code uses $.ajax() to get the data, and the actual ajaxStop event is triggered after all AJAX calls are complete. I am referring more to the pattern of using callbacks within callbacks; I would like to discover a way - a pattern - to avoid this. — user1477388 4 mins ago
I've put it on hold.
And, real code edited in, voted to reopen
It seems "all possible scenarios" could be covered with.... 7 tests? — Mat's Mug ♦ 11 secs ago
@Phrancis day of week +1.. how is that not 100% covered with 7 tests?
or did I just stick a foot in my mouth again?
5
1
Q: CodeWars mathematical expresion evaluator

ZackI recently wrote the following code for a codewars.com kata for evaluating mathematical expressions. I've been writing ruby for years, but almost everything I do is for personal use and isn't shared, so I've gotten essentially zero feedback on my ruby style. The following block of code (with m...

0
Q: ASP.NET MVC - Onion Architechure

TomI've been looking into the Onion Architecture for an upcoming project using ASP.NET MVC 6. I think I have a pretty good understanding of how the architecture should look like and why I should be using it but putting it into practice was a little more difficult than expected. I have 5 projects in...

18:56
http://www.commitstrip.com/en/2016/02/10/true-story-one-code-review-too-many/
CommitStrip
True story: one code review too many
CommitStrip
1455130366
9
@CommitStrip LOL.
dates are evil and will be the first reason cited by our robot overlords why humanity will be eradicated
3
@DanLyons Only the masses will be controlled by robots. The programmers and physicists will be too smart for those old robots.
@Phrancis It's actually not much better after the edit.
@Hosch250 with all the bugs I've written in my lifetime, I would have guessed programmers to be some of the first ones targeted in revenge
19:02
@CommitStrip Funnily the French version uses "deprecated" but the English version uses "depreciated", odd
@Mat'sMug You don't want to add tests which fail on purpose?
Like check if Wednesday is the 6th day of the week, things like that.
@200_success I see, but since the real controller is 2k lines long - I was hoping I could get away with a bare-bones implementation of the pattern. I am only interested in getting comments/suggestions on the pattern itself, not the specific functions of the code. — user1477388 54 secs ago
truth is, I suck at testing
Someone else handle that please?
Join the club.
19:07
We don't have a problem with reviewing a lot of code. As long as you can keep the post below 65535 characters, we can handle it. — Phrancis 9 secs ago
2K lines is an appetizer. If you're not interested in a peer review of your code but rather you're looking for a "design review", your question is unfortunately off-topic on this site. — Mat's Mug ♦ 7 secs ago
"appetizer" lol - that's a little bit overstated, 2K LOC is a lot of code when you're trying to debug it
right, lol
2k LOC usually fit within the 65k character limit though. It's jQuery, not C#.
@Phrancis especially 2K lines of JavaScript
19:09
lol
Or 2K lines of SQL ;(
@Zak Your comment on that was superfluous IMO. It was already handled.
Zak
Zak
@Mast I started writing it before all those other comments appeared ^^
OH EHM GEE there's the real code
@Zak Consider the 'cancel' button next time. It has happened to all of us that we're writing something that's no longer necessary to post, whether it's an answer or a comment.
19:12
@Captain being a slowpoke today?
@200_success I have added the real code, but since it was significantly over the character limit, I only included the initializer. Not sure how you'll really be able to read this code without the corresponding models which accept the various callback methods, but you asked for the real code! :) — user1477388 46 secs ago
/*=========================================
=            Table of Contents            =
=========================================*/
/*
    00 - Initializer
    01 - Summary
    02 - Consumer Lead
    03 - General Services
    04 - Products
    05 - Quote
    06 - Status
    07 - Utility
 */
/*-----  End of Table of Contents  ------*/
how to beat the character limit with 2K lines of code
@Mat'sMug Post 8 questions ^^
I've never seen code which needed a table of contents... that's pretty novel. (also probably pretty bad)
Awesome! Looking at your ToC it seems you have material for... 8 posts! (make them on separate days, to leave yourself the time to incorporate feedback from previous posts) — Mat's Mug ♦ 9 secs ago
What is with all these this.$foo declarations... is that a constructor or something?
19:16
initializer
Same difference?
I don't jQuery, maybe
I don't know squat about jQuery either
Looks similar to setting up member variables in Python.
could that code be beating the crap out of SRP?
3
19:18
lol SRP
@Mat'sMug It's already split in 8 modules, what are you talking about ^^
Yes, probably.
"General Services" - I read that as "dumping bag of utility functions"
2
No, no, he has a Utility for that.
So there's like, Utility functions and functions that are even more general.
Perhaps "General Services" === stuff that's needed and "Utility" === stuff that's useful
riiight. we'll see in 6-8 weeks a few posts' time
19:21
0
Q: Library assistant

MastHackerRank currently has '7 days of JavaScript' going, a quick intro into the JavaScript language. Every day a couple of challenges will be made available. One of the challenges of today was this: Task Write a JavaScript program to display the status (i.e. display book name, author name ...

0
Q: JQuery : changing a global var in function not changed

CleveridgeI'm struggling with a setting (as global var) i'm getting from an other settings-file. Steps : I've created the global var outsite the function I call the function to receive the new value of the global var from another file show the new value as an alert => is wrong Example : var set_...

    /*-----  End of 00 - Initializer  ------*/
})(jQuery);
To be clear, this code, and any of it's potential imperfections, was inherited ;) — user1477388 36 secs ago
poor soul
"job security"'
I'm four comments away from Pundit!
@Hosch250 Pundit is comments with a certain score, right?
@CaptainObvious Looks like I've finally forgiven JavaScript for it's shortcomings and reconciled myself with it.
19:32
[badge:pundit]
The progress thing in my profile refuses to show me my progress on that. Can't be over 50% though...
19:48
@Quill You're breaking reply-functionality

« first day (1012 days earlier)      last day (3303 days later) »