Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

FamDav posted:

we encounter so much mediocrity in our day to day lives that it infuriates and depresses us that people who do not put in a sincere effort can be rewarded as well or even better than us. we have to accept that our reward for hard work and persistence is the knowledge that we took the more difficult path and succeeded.

only then will you find happiness and comfort.

you have to accept that your life is not your job

only then will you find happiness and comfort

Adbot
ADBOT LOVES YOU

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
i am using eclipse to write python code for some personal projects

does this make me a bad person

should i take the time (b/c these projects aren't particularly urgent) to swot up on vim/emacs/whatever it is the cool kids swear by

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
aight, next, more general terrible-programmer question: i recently dropped out of my phd, and plan to start applyin for software jobs in the fall. thing is, all my programming experience has been in an academic setting, so most everything ive written was by myself for myself.

now ive got a couple of projects in mind for the summer so that ill have an example or two to point to in interviews, and i plan to stick my head into an open source project to get a sense of how bigger programs roll. beyond that though, there any reading you'd recommend on Not Being A lovely Programmer In a Team Environment? are there any open-source projects that are particularly well structured/written/managed that i'd do well to look at as an example of how it's done?

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

prefect posted:

semi-serious question: what's the serious engineer-scientist opinion of things like ip, tcp, and http? are those masterpieces of engineering design, or are there chunks of them that are the equivalent of spit and baling wire, things that work despite themselves?

they are excellent examples of decent ideas taken way, way beyond their original usage scenario

like not in ipv4 designers wildest dreams would 4 billion devices want to talk to eachother

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

uG posted:

420 write my own string libraries every day

this kind of poo poo is academic programming from high school interns through to senior faculty

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

Bloody posted:

i dont even know what most of these functions do

hell i even documented one of them and i still dont know what the input data is supposed to be

it doesnt help that its c so the parameters are just pointers to... something.

post yr code

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
don't try n clean it up first either

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
wrong drat thread

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

chumpchous posted:

Wow what the gently caress??

Does it work if you do i = i + 1?

http://repl.it/languages

(no, because the problem isn't with the += operator)

e: lotta words if anyone cares

http://stackoverflow.com/questions/370357/python-variable-scope-question

coffeetable fucked around with this message at 16:32 on Jul 18, 2013

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

tef posted:

ps should i make a smart dog book thread in CoC and then argue about stuff?

yes

even if it's exhausting for you, it'll be educational for the rest of us

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
if i were forced to reformat that code, i'd probably go with

code:
# gently caress your 80 characters

return next((WATER, ZEBRA)
              	for (red, green, ivory, yellow, blue)			  	in c(orderings) 	if imright(green, ivory)
                for (Englishman, Spaniard, Ukranian, Japanese, Norwegian) 	in c(orderings) 	if (Englishman is red) 	and (Norwegian is first) 	and nextto(Norwegian, blue)
                for (coffee, tea, milk, oj, WATER) 				in c(orderings) 	if (coffee is green) 	and (Ukranian is tea) 		and (milk is middle)
                for (OldGold, Kools, Chesterfields, LuckyStrike, Parliaments) 	in c(orderings) 	if (Kools is yellow) 	and (LuckyStrike is oj) 	and (Japanese is Parliaments)
                for (dog, snails, fox, horse, ZEBRA) 				in c(orderings)		if (Spaniard is dog) 	and (OldGold is snails) 	and nextto(Chesterfields, fox) 		and nextto(Kools, horse)
                )
but my god there has to be a better way, probably involving pulling each of those lines out into their own function so you could see how they interact

coffeetable fucked around with this message at 06:02 on Jul 24, 2013

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
e: no-one cares

coffeetable fucked around with this message at 03:45 on Jul 29, 2013

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

chumpchous posted:

no but it's awesome

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
this is the third time ive mentioned haskell today, what's happening

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

chumpchous posted:

your recurrsing

gently caressgently caressgently caress gently caress

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

wolffenstein posted:

its loving frustrating companies need engineers badly but have only phd level jobs. a bs in cs doesn't mean poo poo anymore.

where on earth do you live that this is true

in the uk at least the software job market is about the only one that's been steadily growing the last few years, and im p. sure the same holds for a lot of the us

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
bsd you an academic or do you just suffer occupational exposure to academic code

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

Dessert Rose posted:

also nothing compares to haskell's type constructors those things are loving awesome

out of interest how long has it historically taken to for production languages to Do A Thing Right once a niche academic lang has done it

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

Bloody posted:

current matlab status:

what the gently caress this is the worst poo poo i have ever seen

thirty year old proprietary language written to be little other than Not Fortran

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
if you're interested in lookin at database stuff a lil more in depth, a book i got recommended a while back (and am really enjoying) is Seven Databases in Seven Weeks

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
crossquotin' because of this thread's hardon about ORMs

Bloody posted:

excellent, excellent. next problem: i want to do database things from a c# app. every previous time ive used a db ive used some sort of orm. i dont know how to write sql more complex than select * from butts where farts = something or whatever. also i really like that orms easily give strongly-typed results. what database should i use (mssql because c#?) and how do i do things as strongly typed as possible?

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

MononcQc posted:

Garbage collection will later determine what can be reused or not. This lets you update trees in O(log n) memory as well as time, rather than O(n) memory if no sharing took place and deep copies were needed, regardless of the content of the nodes.

theoryspergin': only true on balanced trees. trees in general it can be O(n) b/c their height can be O(n)

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
favorite thing i learnt today: how to initialize arrays of arbitrary size in constant time

(encountered it via this paper, which while it improves the auxiliary space bound, doesn't explain it as clearly)

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

gucci void main posted:

gonna take a note out of the tef playbook and read the entirety of parse.y

read a book on parsers or compilers in general first, so you at least know what they're supposed to look like

hell, write your own simple one

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
can anyone here recommend an app for sketching out class diagrams and shiz?

im architecturin' my first not-absolutely-trivial project and drawing out possible structures w/ pen n paper feels slow

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

Nomnom Cookie posted:

just make classes. u wont figure out how bad ur design is until you try to use it so spend at least 10x as much time coding as designing

Plastic Snake posted:

pen and paper, but nomnom is right just code and found out what's really broken
yeah im not doing it all up-front, just sketching out some ideas, implementing them, realising what's wrong and then adjusting the implementation + sketch. don't want to try and hold it all in my head b/c if i go do something else for a week, when i come back i'll have forgotten it all.

Posting Principle posted:

omnigraffle. dia if you're poor
dia it is

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

Nomnom Cookie posted:

SWIM should research optimal lovely hack density in kludges/KLOC and report back
call a node in a dependency graph "dirty" if it contains a lovely hack. define a utility function that is positively related to the number of dirty nodes, but (very) negatively related to the size of the largest all-dirty connected subgraph

if you also posit that lovely hacks encourage lovely hacks in connected classes, i reckon there're some interesting questions to be asked about contagion in codebases

Brain Candy posted:

the plural of lovely hacks is not library

lol

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
different ppl have different reward functions. at one end of the spectrum, some people just wanna make dat led blink, and aren't really fussed about layers of abstraction or efficiency or whatevs.

at the other end, there are people who want to learn how to Do It Properly. for them, functionality comes somewhere down the line, and in the meantime they're satisfied simply by the fact that they're learning a thing.

just because the vast majority of this thread falls into the latter category doesn't mean the former doesn't exist or are "stupid"

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
also i dunno if you've all noticed, but the progress of modern technology is largely dependent on piling one abstraction on top of another so you don't have to care about the small poo poo

lol @ complaining bout javascript for controlling a raspberry pi when the main use of js is controlling a global telecommunications network

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

uG posted:

really isnt that hard

this is a terrible phrase. loving arithmetic "really isn't that hard", and yet there are multitudes of people from all walks of life who have immense difficulty with it. things are only easy when you've previously developed processes and experience that can be readily transferred across to the new topic. guess what: if you've never had to rigorously reason about abstract structures before, pointers are a brick to the face.

it's saying crap like that which kills people's interest in technical disciplines before they even begin, because they take their first failures as an indication that they're "not smart enough". really, it's just that the wankers harping on about how easy things are had their own comparable failures long ago or in a different area, and recognising that reality just can't trump acting like a condescending bastard, can it?

coffeetable fucked around with this message at 22:42 on Oct 26, 2013

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
or hell maybe you actually are a Terry Tao-esque ubermensch and everything is easy for you. in that case shame you're without the good graces to realise not everyone's so lucky

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
ps this is just spillover from the frothing rage i devolve into any time i see someone being mocked for poor mathematical ability

triplepost motherfuckers

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

Malcolm XML posted:

terry tao seems super chill and his blog is cool

running across gowers + then tao's stuff was what made 16yo me snap outta teenage ego and realise there are people who are straight-up better than me, nolo contendere. before that it was all "yeah but" bullshit.

he's dreamy :allears:

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

uG posted:

who gives a poo poo about pointers if the alternative is using nodejs or whatever, just pass by value gently caress it. this poo poo is in the context of an arduino where you probably dont need to easily parse a XML document or string manipulation. you are making the LED blink on %40 or whatnot, the code isn't going to be that difficult to someone who ALREADY knows enough to do it in javascript.

LED blinking is probably easier to get goin in assembly than it is in js, when you factor in the time taken to set the thing up. but the difficulty curve out from that point up to say general purpose IO or silly experiments with home automation would be vastly steeper in a next-to-the-metal language than it would be a nice managed environment.

im not gonna defend arduino'in in js or node.js specifically because frankly i dont know poo poo about them. what i will go to the hilt over is insisting that people work in C before they do anything else, cause that poo poo stinks of THE ONLY WAY TO LEARN IS THE WAY I LEARNT and THE ONLY REASON TO LEARN IS THE REASON I LEARNT

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

so this is qualified by the fact that i never had trouble with pointers, but from chatting to a whole load of people who did/do: the difficulty with pointers seems to be that they're the first concept where you need an explicit model in your head of what the internals of the system are doing. up until then, treating a computer as a black box and relying on your monkeybrain's pattern recognition can lead to some painful experiences, but it works. the typical example i use of this black-box kind of learning is "public static void main" in CS101. the students don't have a drat clue what it means, but the lil' heuristical learnin engine in their heads is sufficient to get them to use it correctly for the duration of the course.

anyway the process of developing these explicit mental models comes so naturally to some people (probs most of this thread) that it's hard to imagine how it could be difficult. you just piece information and evidence together and if you persevere long enough it makes sense, right? but the thing is if you don't have a curious streak, it's very easy to have lived a life where you have never had to do that. come that pointers class freshman year, the required mental-modelling routines simply aren't there.

moving on to languages themselves, i agree it's really valuable to know C. but it's not mandatory. if a newbie is the kind of person who much prefers results over understanding how things work, or worse if they're the kind of person who's never developed the mental models i was talking about, C is gonna be limiting and frustrating and painful, and stands a good chance of putting the newbie off permanently. they might run into hurdles with p-langs, but they'll dutifully ask their nerd officemate or stackoverflow, and a solution fragment will be delivered in course. they might take the scenic route, but they'll still git 'r done.

by your "amateurs from professionals" line, im guessing you dont think it's that's a wholly bad thing if those kinds of programmers are put off. which if all you care about is the quality of code you personally have to work with, i guess is fair enough. in my mind however, even if they can't program well, they can still program. and society seems to consider even that limited ability pretty valuable, as evidenced by the number of such people who are - despite your elitism - software professionals.

what's more, i can think of few better ways to develop those mental-modelling skills than programming. and i consider that to be pretty valuable for society too.

coffeetable fucked around with this message at 00:52 on Oct 27, 2013

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
Willard Foxton
Willard Foxton is an investigative journalist & television producer

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
c project s: learnt me some ninject today. woah this is cool. far less of a pain than i expected IoC containers to be

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY
i was gonna make a huge long post describing a terrible programming problem i was having, but the act of writing it down lead me to a solution. thanks yospos, you're the greatest.

quote:

aight, terrible programming question:

in C#, im representing a 3d foam by four classes:
  • Cell, which contains lists of neighbouring Faces, Edges, and Vertices,
  • Face, which contains lists of neighbouring Cells, Edges and Vertices,
  • Edge, which contains lists of neighbouring Cells, Faces and Vertices,
  • Vertex, which contains lists of neighbouring Cells, Faces and Edges
i also have various Generator classes which (with the help of a pile of helper classes) create various structures by linking instantiations of these classes together. for example, a CubeGenerator would produce
  • 1 Cell object with references to 6 Face objects, 12 Edge objects and 8 Vertex
  • 6 Face objects each with references to the Cell object, 4 Edge objects and 4 Vertex objects
  • etc etc etc
yes! you're right, dealing with a data structure this heavily linked can be a damned pain, but it's a natural representation of the object, it makes few assumptions about global structure and it's really easy to traverse.

anyway what i'd like to be able to do is subclass a Cell/Face/Edge/Vertex and add new fields to it that can hold data about that cell. the first solution to mind is to go nuts with generics, but that means instantiating my CubeGenerator would be

new CubeGenerator<TCell, TFace, TEdge, TVertex>()

and instantiating a face would be

new Face<TCell, TEdge, TVertex>()

which is gonna become painful pretty quickly. the next idea is to wrap all those generics in a Mesh class, where the type arguments are given once when the Mesh object is created, and then anyone who needs a new Cell object can call Mesh.NewCell(). this however loses some modularity - if you want to add a field to Cell, you need to

wait it's not that much modularity lost and it solves everything, woop

(yeah it's a standard factory i really should've spotted it earlier)

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

MononcQc posted:

Welcome to the world of Rubber Ducking.

i dug this guy out my closet after reading kernighan & pike



but for whatever reason, talking out loud doesn't make me consider my options as rigorously as writing things down

Adbot
ADBOT LOVES YOU

coffeetable
Feb 5, 2006

TELL ME AGAIN HOW GREAT BRITAIN WOULD BE IF IT WAS RULED BY THE MERCILESS JACKBOOT OF PRINCE CHARLES

YES I DO TALK TO PLANTS ACTUALLY

Zlodo posted:

do people actually talk to a duck or something
i just imagine some coworker having to dig in my code and going all "wtf did you do this poo poo for" and i write comments explaining said poo poo to that hypothetical pissed off coworker

my process of problem solving

1. explain it to myself (silently)
2. explain it to the pig
3. explain it in writing
4. explain it to a person

the vast majority of stuff is caught by the first stage, but 2 & 3 frequently catch stupid questions without wasting anyone else's time. it also means that by the time i get to 4, ive got a clear statement of the problem

  • Locked thread