« first day (969 days earlier)      last day (4035 days later) » 

user55340
2:27 AM
@JimG. Wayne M: seen: 3 hours ago.
 
9:23 AM
Got a question for you all if you don't mind taking a potshot at it, wanted to check it was ok here first
Got a project here (c#) thats relatively new (6 months old, ish) but it interfaces with a third party program, as in, it drops files into a folder, third party program picks them up, uses them, dumps output in different folders, my project then picks up the outputted folders and continues its work on them.
Now i'm wondering how this can be backtracked so that it can be tested, using NUnit, given that the tests need to be standalone and not rely on another installation of the third party product to succeed
 
@SpikyBlue You are in the wrong chat room, we don't do testing here. We are real programmers, our code just works.
On a more serious note, this sounds like a good question for the main site.
 
Wasnt sure if it would be a duplicate or not, i reckon it would have been asked before but my search term criteria are lacking, so i dont trust them!
 
There probably is a dupe out there, but... who cares? Just go ahead and ask, if it's closed as a dupe, that's great: Insta-answers!
If you search for 5-10m (including scouting the relevant tags) and didn't find a close enough dupe, just go for it.
 
i put in a title and the site told me off as it seems too subjective xD
 
What was the title? Did it had "best" in it?
 
9:35 AM
How to approach testing when you rely on a third party tool
 
"How to" is (probably) what tripped the warning, too... tutorial-ish. Also, the title is a bit generic.
Perhaps you could go with something like: "How can I test a third party application with NUnit?"
 
hmm, but its not the third party tool i want to test,
i want to test my own code works
but a part of it relies on a third party application
 
How can I test parts of my application that rely on a third party tool?
 
thats the one, thanks
0
Q: How can I test parts of my application that rely on a third party application?

RhysWI have a fairly new c# application, approximately 6 months old, that we are now trying to incorporate testing into. (Should have been done from the start but I cant change the past) Parts of this application involve pushing some documents out to a folder. A third party application then picks the...

@YannisRizos whaddya reckon, need some rewording?
 
9:54 AM
Looks fine to me. One thing that might be worth clarifying is if you expect the third party tool to change in the near future.
I've build a glorious test suite for a third party web service once, and a couple of months later they changed the API <sigh>. Is that something that could happen to you? Could an update on the tool change its output format?
 
@YannisRizos its already 3 years out of date and been dropped by the original creators, very unlikely to be ever changed ever again XD
 
Ah, that might be worth mentioning, because it makes things a bit simpler. Perhaps you don't really need to test anything but how your app responds to the tool's output, and you can generate test output easily.
0
A: How can I test parts of my application that rely on a third party application?

Abdullah ShoaibYou may transfer existing (already processed files in previous runs) output files into the output folder just to simulate the work of the third party API in the unit test code. This will suffice if you are unit testing your own functionality and not the third party functionality.

@SpikyBlue What he said.
 
10:28 AM
@YannisRizos ah thats a good answer,
probably the best approach too
 
10:42 AM
@YannisRizos 'ping'. Now have the dashboard open in another tab & wanting to get further instructions/actions if at all possible. :)
 
@AndrewThompson Hey. I've changed your status to "editor", you should now be able to add a new post. Have you worked with wordpress before?
 
@YannisRizos I have not worked with WordPress. Give me a minute to search on some tutorials (I had hoped it would be like SO)..
 
There was a plan to use the SE engine for our community blogs, but... no idea on its current status. The one thing that's important is: do not publish until your post is 100% done. In the post edit page the buttons are in the right sidebar. Avoid the big blue "publish" one, until you are done use "save draft".
 
@YannisRizos I now see the edit bar at the top with offer to create a new post. I'll chase up some WordPress details. Thanks for your help, I should be able to take it from here.. :)
 
@AndrewThompson When you are ready to publish, ping either me or @WorldEngineer to take a look. World Engineer manages the blog and reviews articles before they are posted, but if he isn't around at the time, I could do it as well. We also have a trello board that helps us organize article ideas, etc. It's public, so you can check it out without registering.
 
11:48 AM
@YannisRizos I have saved a draft I'm largely happy with. The only problem I see is in the formatting of the code. the code element does not allow multiple lines and pre has an ..odd way of interpreting the code as posted. There are enormous gaps for any blank line, and the indentation is less than completely logical. The blank space I can live with, but the indentation is an eye sore. I checked the code was not a mix of TABs and SPACES, I cannot think of what else is causing it.
 
12:42 PM
@AndrewThompson I believe blogoverflow supports markdown.
 
 
1 hour later…
2:11 PM
I'm an MSO celebrity! Woo!
@WorldEngineer A couple people have pointed that book out to me. I might go peruse it sometime just so I know whether or not I should recommend it, but initially I've told people it's probably great just because the writer being a LISPer so he surely recognizes javascript correctly
@YannisRizos Real programmers? Code just works? Says the PHP programmer??
 
user55340
2:32 PM
@JimmyHoffa Only if we ignore you...
 
I'm just hearing pink floyd in my head now... "Hello, Is there anybody in there? Just nod if you can hear me Is there anyone home?"
 
user55340
@JimmyHoffa Ever listen to the symphonic pink floyd?
 
user55340
Us and Them: Symphonic Pink Floyd is an instrumental album of Pink Floyd songs. The album was arranged by Jaz Coleman, produced by Youth and performed by the London Philharmonic Orchestra conducted by Peter Scholes. The album cover was painted by Roger Dean who is known for his organic paintings. He also designed albums for Asia, Uriah Heep, and Yes. The album, which features six songs taken from The Dark Side of the Moon released in 1973 and three from The Wall released in 1979, peaked at number one in the Billboard Magazine Top Classical Crossover Albums chart. Track listing Sin...
 
user55340
2:49 PM
FWIW, the app store SE area 51 proposal was closed under the "2 years and still can't get enough commitment" thing.
 
I've probably heard bits
this is my standard listening when coding somafm.com/secretagent
 
user55340
> peaked at number one in the Billboard Magazine Top Classical Crossover Albums chart
 
user55340
Gah... and how big is that chart?
 
@MichaelT well we know there's at least one album on it lol
 
3:35 PM
I just thought of a data structure, this has to be a thing... Has anybody ever heard of this; a doubly linked list, which instead of being a linked list where each node knows about it's previous, rather having two singly linked lists which are linked in reverse order of eachother with a map function that will go from node N in the forward linked list to node N in the backward linked list?
so node.Prev = inReversedList(node).next
 
user55340
In computer science, a double-ended queue (dequeue, often abbreviated to deque, pronounced deck) is an abstract data type that generalizes a queue, for which elements can be added to or removed from either the front (head) or back (tail). It is also often called a head-tail linked list, though properly this refers to a specific data structure implementation (see below). Naming conventions Deque is sometimes written dequeue, but this use is generally deprecated in technical literature or technical writing because dequeue is also a verb meaning "to remove from a queue". Nevertheless, seve...
 
user55340
And then something interesting, related, but not useful - chiark.greenend.org.uk/~sgtatham/algorithms/revlist.html (from the maker of putty)
 
Stupid haskell, I just relized why that idea of a linked list was even put into my head, it's a Zipper
 
user55340
I still like the skip list as my favorite data structure...
 
user55340
A skip list is a data structure for storing a sorted list of items using a hierarchy of linked lists that connect increasingly sparse subsequences of the items. These auxiliary lists allow item lookup with efficiency comparable to balanced binary search trees (that is, with number of probes proportional to log n instead of n). Each link of the sparser lists skips over many items of the full list in one step, hence the structure's name. These forward links may be added in a randomized way with a geometric / negative binomial distribution. Insert, search and delete operations are per...
 
user55340
3:48 PM
 
I still don't entirely understand it because the sizes have to rely on some complex math
@MichaelT does each node have reference to a lateral node as well as the next?
 
user55340
At the bottom level, its a simple linked list (one direction - that's in point for concurrency).
 
Yeah, I get that, but I just don't know why you would want other lists that skip some nodes
 
user55340
Additional levels up are probabilistically added when the list is created... so overall, it approximates a balanced tree if you were to look at it that way.
 
unless you can get back to the bottom one from any of the nodes
 
user55340
3:52 PM
Say you are looking up the '7'. Start at 1, 1 is less than 7. Top layer goes to nil, go down a layer, 1 goes to 4. 4 is less than 7, so try that top layer, to 6. Top layer of 6 goes to nil, go down a layer. 6 goes to 9, 9 is greater than 7, go down a layer, 6 goes to 7, found it.
 
user41796
@MichaelT - that's an intriguing idea. Very cool
 
user55340
One aspect of the list is that you can maintain its average binary tree lookup and insert... without the convolutions of AVL or red black trees of moving the branches around.
 
user55340
Its easier to work with (and thus fewer bugs) to have a linked list.
 
Yeah, I have no idea what the use is... I've heard they make great trees and they sort very well, but I have no idea how... Can you arbitrarily move up and down layers from any given node?
 
user55340
And because of its linked list nature, it is possible to have multiple threads in the data structure without locks.
 
3:54 PM
Say I'm on the bottom of node 4 in your example there, how do I choose right vs left?
 
user55340
? - you always look to the right.
 
It works as a binary tree, no?
 
user55340
 
user55340
meeting - I'll be back.
 
4:16 PM
Heh I like the authors note on that reversible lists from the putty developer thing:
> In summary: I can't think of any reason this algorithm might be seriously useful. But it's very cute.
@MichaelT ah at the bottom however he links to something someone invented in '04 they called "satelite list" which sounds very much like the structure I was imagining
Yeah, that's exactly what I was thinking about
 
user55340
5:10 PM
@JimmyHoffa back...
 
5:27 PM
@MichaelT oo someone's trying to pick a fight with ya..
@JimmyHoffa: Ok... what would be the popsicle-stick bridge analogue to software projects? One-off Perl scripts? ;) — FrustratedWithFormsDesigner 3 mins ago
 
6:12 PM
@dasblinkenlight Rock beats scissor, but nothing beats Dijkstra. Great link. — Jimmy Hoffa 36 secs ago
 
user55340
6:48 PM
@JimmyHoffa so, got your head around a skip list yet?
 
user55340
If you think having Area 51 in the flair is bad, I wonder what you think about my flair... — Yannis Apr 11 at 15:23
 
user55340
@Yannis Hahaha...Programmers SE....I see what you mean — Bart Apr 11 at 15:24
 
7:17 PM
@MichaelT Nope. I think I need to care more, but they seem sooo strange, makes it hard to imagine caring.. They're like an indirection towards a hand full of concepts they implement by accident, while literally modelling none of them
That and I'm allergic to reading more than 8 lines of imperative code at once anymore, so the examples do nothing for me
I am transfixed by this article by Dijkstra though. The dude was awesome, I think I like him more than Knuth as most real-programmer who's famous, he speaks with such clear knowledge of what we actually deal with in the trenches day in day out, crazy for an academic
 
user55340
7:31 PM
@JimmyHoffa pretend you have a linked list, and then make it so that every other node was linked to the one, two ahead (skipping every other).
 
user55340
 
user55340
Now, we can get to 13 with only 7 steps rather than 13.
 
user55340
This is good. Lets do it even better... lets do that again...
 
user55340
 
user55340
Now I can get to 13 in 4 steps.
 
user55340
7:33 PM
If you look at it, this is a set of trees that have been 'flattend' somewhat.
 
user55340
Just look at the 1 .. 7 set in that last one, and you can see a binary tree.
 
user55340
The thing is that the ideal only works for for a static structure. Few data structures are this ideal... so instead they are added based on probability. 50% have just one reference. Of those that have 2, 50% of those have 3, and 50% of those have 4, etc...
 
user55340
 
user55340
Overall, you still get the log(n) performance of balanced binary tree.
 
@MichaelT I understand how it's structured (I'm still not certain if on a given node you can traverse up or down in the layers without going back to head) but I don't understand what you mean about being higher performance; for what? Reference by index? I'll buy that, everything else... I just don't really see... also, it's not a binary tree, it's a list of binary nodes, a binary tree wouldn't have both 2 and 3 referencing 4 in your first image
nodes are traversable from multiple entry points, this is not at all the case with a binary tree
And if you want indexed reference, I would presume you wouldn't use a linked list...
That's automatically the wrong choice
 
user55340
7:47 PM
Nope... its its own data structure... it has its own advantages (and disadvantages).
 
user55340
There is some stuff that you can do to add some indexing... if the skip has the information about the size of the skip.
 
user55340
See the 'indexable skiplist' on en.wikipedia.org/wiki/Skip_list
 
user55340
 
I just totally do not see how it's useful, other than indexed reference, for which segmented arrays are going to be the end-all-be-all unless you are in an extremely constrained space requirement
 
user55340
They key is to look at what package they are implemented in - ConcurrentSkipListMap - docs.oracle.com/javase/6/docs/api/java/util/concurrent/…
 
user55340
7:58 PM
It can be used without locks - making concurrent programming much faster.
 
user55340
It also has some other benefits when you look at the interfaces - "Navigable..." which is more than just sorted, but also lets you get back head, tail, ceiling, floor, etc...
 
user55340
Look at the performance (Table 2) in cl.cam.ac.uk/teaching/2005/Algorithms/skiplists.pdf
 
user55340
This is a good read on the structure msdn.microsoft.com/en-us/library/…
 
user55340
9:24 PM
@WorldEngineer the OP on the javascript migration question...
 
user55340
Hey, while I am grateful that someone took the time to migrate my question over here, can someone also explain why? I purposely chose programmers.se because I thought this was a programming question? What am I missing? :D — Aaron 3 mins ago
 
9:41 PM
Am I off in this understanding of RoR's purpose?
My 2 cents: Highly scalable real time performance constraints != what RoR is for in my head (based completely on reading, not hard experience though, so take that with the grain it comes with..). When you want hard constraints like that you may want to start thinking about something more industrial grade like .NET/Java/Erlang/etc — Jimmy Hoffa 2 mins ago
 
user55340
@JimmyHoffa I've never though of Ruby as high performance and such. To back that up, slideshare.net/CharlesNutter/…
 
@MichaelT that is hilarious
slides 9/10 are the biggest reasons I've avoided bothering with ruby despite all the hype. I'm usually happy enough to give something a try even if I don't expect much of it, but given that fact with what type of software problems I enjoy... what's the point?
 
user55340
There's neat stuff about the JVM when you really dig into the later slides.
 
user55340
Ruby lets you build crudy software really fast... but that says nothing about the performance of it when it runs.
 
user55340
9:56 PM
You think you have a multi-threaded enviroment like a nice app server, but you don't. Sure, you can have multiple threads in a single call, but two calls don't interact. And that can make a mess.
 
yeah, and given the Q the guy is asking, I think he's a bit out of his depth...
> There will be several thousands of these classes occurring simultaneously, so I need to support 50,000+ concurrent connections
But who knows, maybe he has some pre-industry C++ experience up his sleeve he just doesn't want to pull out (because, honestly, who does?)
 
user55340
I'm curious what uses 50k concurrent connections... anyways, you are talking about clusters... and I haven't heard anything about clustered ruby installs.
 
Considering he's a PHP programmer I'm going out on a limb and presuming he's not talking about some enterpriseyness, and going to guess he's up to either game development, or social software
Add to that the fact that, realistically I can't imagine he needs that many connections, he just doesn't really know how servers handle distributed state to partition enormous loads across multiple machines
 
user55340
50k players on an MMO at once is quite sizeable (big leagues). Social connections... is it all at once? or hits per second?
 
@MichaelT He probably just doesn't really know enough about architecture to realize 50k concurrent connections is nuts
 
user55340
10:03 PM
One box would be painful to have 50k, again... its a clustered configuration in order to support that, and that brings up very different worlds when dealing with ruby.
 
Either way, it's a bit of a shopping list question.. I'm pondering closing it, but it's quite well focussed and detailed.. and he has made clear effrot
 
user55340
> There is going to be a single teacher who will need to monitor the progress, so that connection will be a continuous stream
 
user55340
Some sort of teaching / school app?
 
@MichaelT Uh, I gotta guess it's not an actual teacher; what teacher is going to monitor 50k concurrent connections worth of data?
I was thinking "teacher" more in the machine learning sense
 
user55340
Dunno... I feel like he wants validation for his solution... and I'm not sure what that is.
 
user55340
10:09 PM
I think it is Too Localized.
 
user55340
Its not a bad question, and while it is a shopping-ish question, it feels well defined... but I don't see it being that useful of one. It was either that, or NARQ, but that doesn't feel quite right either.
 
Yeah, it's totally on the edge.. Too Localized is likely right though
Though it's an interesting problem he's working on, and I want to discuss it with him heh
 
user55340
If everything of the "this specific setup" is removed and asking question about highly scabale RoR - thats a better question.
 
user55340
Too localized questions are often great chat subjects.
 
I linked him here in comment, maybe he'll join and we can talk about it
 
user55340
10:23 PM
Followup to that migration javascript thing ( chat.stackexchange.com/transcript/message/9202822#9202822 )
 
user55340
Programmers.SE is typically for questions of higher level design issues (data structures, architecture, licensing, algorithms, testing, etc..). When you start dealing with implementation details and bug fixes, it becomes more appropriate for SO than P.SE. — MichaelT 54 mins ago
 
user55340
Ah OK, thanks a lot for clearing that up much appreciated :) — Aaron 52 mins ago
 
user20683
10:39 PM
yeah
 
user20683
there was a push to get us renamed a while back
 
user20683
SE proper said "no".
 
Renamed to what? You mean the renamed to Programming or some such instead or Programmers ?
I thought meta P.SE said "no" before it was ever even pushed anyway
 
user20683
Software Engineering or Software Concepts or something
 
user20683
something that does not scream "We has teh codez" to the new and/or clueless
 
user20683
10:47 PM
@gnat how was your vacation?
 
user20683
Skip Trees
 

« first day (969 days earlier)      last day (4035 days later) »