« first day (1636 days earlier)      last day (3353 days later) » 

user55340
1:56 AM
 
user55340
@SimonAndréForsberg also, meta.prog... would be false positives.
 
user55340
2:51 AM
@WorldEngineer Now that I'm sitting down at a real keyboard (and after dinner)... Light table: lighttable.com - really good when I used it last. Looks even better now.
 
user55340
And then there's nightcode: nightcode.info (also a $5 app in the OS X app store if you wish to support the developer that way) though you can download it for free from the website.
 
user55340
If you have IntelliJ Idea, La Clojure plugin can be quite nice too ( github.com/JetBrains/la-clojure ) with its completion and refactoring.
 
3:53 AM
posted on February 24, 2015 by James Hague

I don't know what to make of the continual stream of people in 2015 with fixations on low-level performance and control. I mean the people who deride the cache-obliviousness of linked lists, write-off languages that aren't near the top of the benchmark table, and who rant about the hopelessness of garbage collection. They're right in some ways. And they're wrong at the same time. Yes, you can d

 
 
3 hours later…
7:07 AM
Does anyone still do programming work for free, in exchange for company equity?
 
 
5 hours later…
12:21 PM
where should I ask questions on education on programming?
specifically: a teacher provided a list of textbooks that have catered abysmal opinions all over the internet.
it's a course on OOP that will make primarily use of C++
 
12:35 PM
@maja opinions on books should only be in chat
 
I don't really have any question on the books themselves, I read the suggested list of books on C++ in SO already and I read (manly awful) things on the books I should buy.
I'd like to ask for suggestions on how to proceed, either buy the textbook the teacher suggested or just use what I feel would be a better choice after a quick research on google.
 
ah, that can be asked on academics.SE phrasing it as: "the book my prof suggested gets bad reviews, should I use it or another?"
 
ok, thanks
 
1:02 PM
Does my answer make sense? It's clear to me, but I've had my head in requirements engineering for the last week now. So things that are obvious to me may not be obvious to anyone else.
 
1:26 PM
The Joel Test has a question about fixing bugs before writing new code? Where does removing waste (unnecessary code) fall? I think that may be more important than fixing some bugs because it may actually eliminate bugs. If there's a feature that isn't used or doesn't add business value, eliminate it. It makes it easier to understand code and find and fix bugs.
It also reduces test time across the board. Maybe it saves seconds, but if you run several dev builds a day, that could add up to minutes. If you add up all the time savings (reading code, debugging, executing tests), we could quickly get into many hours.
 
2:06 PM
@RobertHarvey I expect that some suck^H^H entrepreneural sort still does, but I've not seen it myself for ~15 years
I think removing code shrapnel is important, but it's sometimes too expensive to identify.
depends on your situation.
 
@ThomasOwens I remove code garbage when i notice it, but I don't spend any time actively looking for it. That seems like a never-ending job
 
2:23 PM
@durron597 There are tools that automate finding dead code. For some applications, it may be possible to put in monitoring code to find out what features are used and even who is using them, but that's not always feasible. The effort does depend on the domain.
 
There's a difference between dead code and code that does stuff nobody uses/cares about anymore.
too often there's the latter
 
True, but both are waste.
And both have methods of observing them.
 
true
 
Ugh. I just discovered that after 2 years of not updating Mockito, they went from version 1.9.5 to 1.10.19 in like 4 months. And released a 2.0 beta
JUnit also suddenly released 4.12 in december
What's the best way to get notified about such releases?
 
I'm not sure there is. Is this at work or personal projects?
 
2:35 PM
but there may be the one guy who uses it and can't live without:
 
@ThomasOwens Work.
 
@durron597 Do you have well-defined projects?
 
@ThomasOwens Umm, I'm not sure what you mean but I think yes
 
What kind of process are you following?
Do you have a well-defined scope for a project or is it more on-going sustainment kind of work?
 
@ThomasOwens I am adding features and fixing bugs to an existing server/client app.
I wrote and continue to write both sides.
 
2:44 PM
@maja I actually found Bjarne's book quite good. I haven't read any others on the list.
 
OK. Do you have a defined funding cycle or some kind of natural stop/start point?
Like "you are now funded for the next 8 months to add features and fix bugs" or is it continuous?
 
@ThomasOwens No. The latter.
 
OK. So what I'd do is pick a point that makes sense that hopefully comes at least once a year.
At that point, do a tool refresh. Look for new versions of tools and evaluate the changes and see if it would be beneficial to bring them in. Depending on your release cycle, you would possibly have a reduced delivery scope that release.
 
The problem is less getting surprised by 3rd party update releases and more about worrying about backwards compatibility when I do notice them.
 
Yeah. You need to take some of your development effort to do that check.
 
2:47 PM
There's always more work than time to do it in, so setting aside time to "test the effect of updating my dependencies" always seems... unimportant
 
You may opt to not update a tool because a new version adds no useful functionality.
But I think taking a day a year to look for updates and seeing if there is new, useful functionality or fixes isn't bad.
Use the same day to look at your compilers, IDEs, libraries, etc.
 
Yeah. I mean, something like JUnit and Mockito is pretty safe because the worst thing that happens is my tests break.
Something like Joda-time is pretty nerve wracking
 
@durron597 is a good way to get more familiar with Java just to play around with one of the online interactive tutorials? or is it better to set up Eclipse or a dedicated environment?
 
In one day, you come up with a list of all the changed software. And maybe you won't even upgrade to the latest. Maybe you're using 1.1 and there's a 1.1.1, a 1.2, and a 2.0 out now.
 
the other problem is that one of my libraries is a paid 3rd party commercial product that releases updates somewhat often
 
2:49 PM
Going to 1.1.1 is trivial, so you decide to do it. 1.2 and 2.0 don't add anything, so just don't update.
 
at least THEY email me when they release a new version.
 
Again, don't update unless there's value added in doing so.
 
Yeah, I haven't.
 
If you aren't experiencing any bugs that they fixed or none of the new features apply, don't waste the effort.
Like I said, a day a year to check for updates. If there are updates, maybe another day to estimate the effort to bring them in. I'm sure management would support 2-3 days a year for you to put together a recommendation and estimate.
If not, I'm sorry.
Plus you could look for new alternatives. Maybe not for your current projects, but for future projects. If there are other teams starting new development, you can distribute interesting things to the rest of your company.
Especially if tools that you are using aren't supported anymore, maybe they shouldn't be used on new projects.
 
@ThomasOwens A little perspective, I am a single developer in a company of 5 people
I was more thinking about auto-notification tools
 
user55340
2:59 PM
Id check once/quarter or so. Just to be able to put significant upgrades on the roadmap in a timely manner.
 
user55340
@durron597 a maven package poller?
 
@durron597 Ah. Still, I'm sure you can build a business case for 2-3 days on a regular basis (yearly at least, quarterly at most) to do a "tools assessment" to make sure you have what you need to keep adding value.
 
user55340
Write an app, parse the pom. Check maven central. See if there is a newer version of the artifact than last time you looked.
 
That is 2-3 days. Once you have a process, then you can begin to try to automate pieces of it (if possible).
 
@MichaelT I've got to believe this is a Solved Problemâ„¢
 
3:01 PM
Maven solves it, if your libraries have Maven.
But I hate Maven.
 
@ThomasOwens All my libraries have maven, i use it with everything
 
@durron597 too many vendors of new software that don't always use maven
 
but maven doesn't tell me if i'm using the latest version.
My paid 3rd party dependency doesn't use maven, but I have an internal repo and I write poms for their jars
 
user55340
Third parties in a non centralized system will be a problem with notifications
 
Quick poll: at your current place of employ, are QA people peers (pay, respect, influence) of developers?
 
3:04 PM
@Telastyn I am my own QA department. WOOHOO
@MichaelT Yeah but those guys email me. It's more like JUnit, Mockito, Joda-time, etc.
 
@Telastyn I don't think so, I think similar pay for similar positions but iirc there are a lot more senior positions for devs than QA folks
 
@Telastyn Peers, generally. Although not everyone would agree with that. I don't know about pay. That varies and the quality organization has a different title structure than engineering, so I don't know how their titles map to pay grades.
 
user55340
@Telastyn current, not sure. Previous no qa as such, everyone peers. Two ago, pay yes peer no.
 
everywhere I've been it's never been close
 
user55340
Three ago, qa was all outsource. So...
 
3:07 PM
the workplace people give me crap whenever I make that assertion about reality.
 
Peers. QA (i.e acceptance testing) is a "temporary assignment."
 
except my current job, we don't have QA here - they were all fired before I started.
 
@Telastyn oh? :P
 
yeh, they canned the whole department. cost $n to employ them but they found $n-$y worth of bugs.
(and cost time to market, etc)
 
user55340
Emp^^ had qa, but they proceeded themselves into a pure annoyance and rubber stamp that they weren't seen as peers. They were paid exactly the same though.
 
3:10 PM
@Telastyn The ENTIRE department?
marginal value of additional qa people drops
so like, if you have 5 people, just one of those people probably would find 33% of the bugs that would have been found by all five on their own
I'm surprised there wasn't a ratio that did work out
 
yeh, so now quality is a bit of a happy coincidence.
 
Of course, maybe the CEO read Worse is Better.
 
entirely possible.
 
Employer^ had 5 developers, 5 integrators (the software was per-customer customizable, but doing so was difficult enough that customers paid us to do it), and 1 QA person
 
3:32 PM
43 mins ago, by enderland
@durron597 is a good way to get more familiar with Java just to play around with one of the online interactive tutorials? or is it better to set up Eclipse or a dedicated environment?
 
user55340
@enderland get an ide and work with it.
 
I figure I should play with Java this weekend a fair bit since I will hopefully be having a few interviews about it...
 
user55340
(Font size question was moved to proper site, deleted locally, tagged properly when moved and incorporated edits I made... Faith in new users slightly restored)
 
user55340
Eclipse is nice, but bloated. Need plugins to do most enterprise things (maven, Scn, git etc). Netbeans is slimmer and faster and more built ins for tooling, but not as commonly used. Idea rocks but is $$$
 
@MichaelT Isn't Git built into Eclipse now?
 
3:39 PM
@MichaelT from what I have gathered configuring a decent java ide is a pain
 
user41796
@ThomasOwens yes, or is a quick plugin install away
 
user55340
I think it's still a plugin. Though I could be mistaken. Ancient version of eclipse here and idea at home.
 
Netbeans is okay
 
I used to like NetBeans. I prefer Eclipse now.
 
user41796
I can't remember if I had to install git into eclipse or not with the drools stuff I was playing with. Quite a few things were already there, I just didn't know where to find them
 
3:41 PM
@enderland This is truth. I would just do hackerrank and project euler problems.
 
user55340
I prefer netbeans over eclipse... But once idea hard to think anything else is acceptable.
 
whenever I try Eclipse it's like it was made for aliens.
 
I think the nice thing is I wouldn't exactly be doing crazy complex projects, so the full IDE hooks/experience part is not as important initially
 
@GlenH7 Never versions of Eclipse include git.
 
I'd maybe move to another IDE if configuring the shortcut keys I use wasn't such a pain
 
3:45 PM
@Telastyn that explains the astronomy related naming
 
user55340
... @ratchetfreak ever try idea? (I owe @Ampt another nickel)
 
user41796
@MichaelT I'm sure he'll take a beer instead
 
user55340
@GlenH7 there is some good cider up this way.
 
user55340
3:51 PM
Btw, saw the thing about this pi day?
 
user55340
3/14/15 9:26:53
 
user41796
Yes to both
 
user41796
:-)
 
user41796
And I ran across a really good cider the other day but the name escapes me
 
user41796
I had a taste and immediately thought of recommending it to you
 
user41796
3:53 PM
Obviously I failed at that last part
 
@MichaelT no I'm a eclipse guy at the moment
 
technically you did recommend it @GlenH7
you just didn't really give enough info to do anything with ;)
I think I'll just install eclipse on my mac at home then and just start playing with it, I'd imagine folks here use Eclipse?
 
user55340
@ratchetfreak give it a download and try.
 
user41796
@enderland I use classical control theory. Binary decisions. None of this fuzzy logic stuff. :-)
 
user41796
@enderland it's pretty much de facto due to the price point. Which isn't to say that people don't complain about XYZ of eclipse enough to switch over to the other IDEs
 
user55340
3:55 PM
The "you have a typo in the column name in this string that is being used as a statemt" (hooked up db to ide, so it knows)
 
user55340
@enderland idea at home since Mayan end of the world sale.
 
user55340
75% off $200 = nice.
 
user55340
Btw, @GlenH7 at engr, use the faq tag wiki as an annotated index of faq. Start that culture early.
 
:)
 
4:17 PM
This looked to be more of a Programmers question, so I have migrated it there. It appears to be mostly about the design (with an example) than the code itself. — Jamal 1 min ago
 
4:34 PM
@ThomasOwens @WorldEngineer Do you want me to move that hangman question from SO to here so that you can merge it with programmers.stackexchange.com/questions/274437/…?
 
user41796
@RobertHarvey I've flagged it on both SO and Progs, btw
 
user41796
Just to tie the links together if nothing else
 
user55340
@RobertHarvey for p.se mod to migrate and merge all the things.
 
@RobertHarvey do it!!
 
user41796
4:38 PM
@ThomasOwens - feel free to nuke my comments on that question once it comes in from SO
 
user55340
Alternatively, Thomas for SO mod!
 
user55340
Btw, thanks guys for mod smashing /review.
 
Done
@MichaelT I did about a dozen. It really wasn't me.
 
user41796
There's another who also happens to be in the Teachers Lounge that could've been pinged
 
user41796
@MichaelT I think @WorldEngineer hammered that one. Noticed he had 39 close reviews the other day
 
user55340
4:41 PM
@ThomasOwens it's a dozen less that need to be reviews, that can be in the process of fix, answer, or delete, or have been migrated.
 
5:41 PM
I feel like I'm living in a Dilbert comic
 
user55340
@enderland change your avatar time?
 
@MichaelT lol
I am a moderator on Workplace... seems fitting somehow to be Dilbert
 
user55340
Do a watchmen - Comedian / Dilbert crossover avatar?
 
5:57 PM
@enderland What's the good word?
 
@RobertHarvey All big applications begin being small applications. — user61852 6 mins ago
[le sigh]
 
user41796
There can be quite a bit of harm introduced from poor practice as well.
 
Well, why stop there? Let's add DI to the mix. In fact, let's use an IoC container so that, instead of injecting the input and output dependencies in the constructor, he can just wire up the dependencies with an XML file.
All that for a hangman game.
 
user41796
That's a good start. And he should write his own XML parsing routines too
 
Using regex.
 
user41796
6:09 PM
And you might as well write a graphics driver at the same time, because "hey, this is practice for writing a larger application."
 
user41796
And you have to use regex because you need to simulate what maintaining a large, legacy application looks like. No sense using the correct tool; assume that whatever project you are going to be on made the wrong choice and there's no hope of changing it out.
 
@durron597 it's been escalated to a conversation that will happen with Boss^'s boss and another manager of mine (srsly up to 4 people who are my manager in this mess)
 
@RobertHarvey Admittedly, I didn't read the thread, but putting IoC in a hangman game early on to allow you to easily swap out the user interface from commandline to, say, swing, is actually a good idea
 
Because Swing is the greatest thing ever.
 
@RobertHarvey [le sigh]
 
6:12 PM
My reaction, the first time I looked at swing: youtube.com/watch?v=gvdf5n-zI14
 
I agree, doing certain kinds of development methodologies to keep your code dry and extensible can be overkill, but if you have an idea of what direction your code will take then you can try to build for those changes early on
you know you're never going to need to write your own graphics driver, so you don't write your code to plan for that.
But you might swap out the user interface.
 
> Secondly (my major concern) is that you are creating a new Scanner: java.util.Scanner input = new java.util.Scanner(System.in);, but you never actually release it, so your application has a leak.
I thought Java did memory cleanup?
 
Isn't YAGNI the very thing that addresses this? You aren't going to need it, until you do.
 
Let's say you know you are going to allow the user to do Undo in your hangman game
 
Well, then you are going to need it.
 
6:15 PM
changing hangman from a framework that doesn't use the Command pattern to one that does is a giant pain in the ass
 
That's a little different than the argument "All large applications started out small."
 
so you should implement the initial version to use Command even though you aren't going to have it implemented in the first release
 
user41796
@durron597 But what's the associated cost to just port to a new UI instead of worrying about DI & IoC?
 
@durron597 Yeah, I get it. But if Undo is a requirement, then you need it.
 
I think that this topic is one of the main things that separates good programmers from great programmers
Knowing when it is worth it to build in all the extra effort in advance
 
6:18 PM
DI (specifically when implemented with IoC containers) is different. It's not a functional requirement; the application is going to behave the same whether you use it or not. It's an architectural detail; you have to have the foresight to know that the project has a non-trivial likelihood of growing large enough that you're going to need it.
 
@RobertHarvey I agree; it's only worth it if you're going to need it OR if you're relatively inexperienced programmer and you're practicing.
 
The problem is, I see developers reaching for an IoC container much sooner than they should. About 95% of the time, the application is not large enough to warrant it, and it's not ever going to get that large.
 
@MichaelT Do you think anyone celebrated the real Pi day? (3/14/1592 6:53AM)
 
@RobertHarvey I've watched a lot of Top Chef. Often the judges criticize the chefs for putting inedible garnishes on the plate. However, in one episode a chef made tamales and took them out of the banana leaf before serving it to the judges. It got cold and lost a lot of the moisture. The judges were all "he should have left it in the banana leaf!"
So it's not "never put inedible garnishes on your plate" it's "only put inedible things on the plate when you're supposed to"
 
user114359
@Ampt real pi day is 3141-59-26 which is not a real date
 
6:24 PM
Then it's not really the real pi day is it :P
 
The same is true of IoC. Programmers learn what it is and think "oh man! IoC is so great, it makes my life so much easier!" and then they don't realize when not to use it. that's one difference between a good programmer and a great programmer
 
also, it could totally be a star date
 
@Ampt no it can't
I was just researching them :P
> A stardate is a five-digit number followed by a decimal point and one more digit. Example: "41254.7." The first two digits of the stardate are always "41." The 4 stands for 24th century, the 1 indicates first season. The additional three leading digits will progress unevenly during the course of the season from 000 to 999. The digit following the decimal point is generally regarded as a day counter.
 
so, in the 31415th century, 9th season, 26th day
boom
#Startrekt
 
@Ampt or just the 23rd century, 1st season, 415th day (the planet they're on has a longer revolution, obviously).
@RobertHarvey Relevant to your interests: programmers.stackexchange.com/questions/274459/…
 
6:27 PM
I thought the point of star dates was that they weren't tied to any one planet
maybe there are 415 days in a season though
what do I know, I'm not a star ship captain
 
so is dependency injection basically pulling out the object construction parameters in such a way that the object takes generic parameters?
So for example, you can more easily switch what is creating the object to be completely different - without breaking the object itself?
 
I would say its more about pulling out hidden dependencies - stuff you would normally instantiate in the constructor of the object using those dependencies, to make them more noticable
so if you have some printer that is a singleton, you could easily just call the getPrinter() method which can instantiate and configure the printer for use, or you could inject it into the object with an IOC container
 
obvious example being a constructor like
`foo(x,y,z){_x=x; _y=y; _z=z;}` vs
`foo() {_x = "x"; _y = "y"; _z = "z"; }` ?
 
at least that's what I used them for - removing singletons and other configurable objects created behind the scenes
 
@enderland No
 
6:31 PM
...no? why not?
 
I've obviously misunderstood what I was reading then :P
 
oh well, there's no container there
maybe I'm incorrect in my knowledge too :)
I'd love to be educated though!
 
Let's say you have an application that uses a database. You could write a model class to have code that accesses your database
(one way is @Ampt's singleton way, another way is the significantly worse "create database connection inside constructor" way)
But yet another way is to pass DBConnection into your model
This way, if you want to change from sqlite to MySQL, all you have to do is pass the object a different DBConnection
 
ok. so in my example, if x/y/z were actual objects being initialized/set by the constructor (instead of simle strings)?
 
and, in your testing, you could pass in an instance of MockDBConnection
so you can test the code without even having a database
 
6:33 PM
ah yes, thats the other one! testability
I knew there were other reasons lol
 
Does it need to be an interface then? (the object you are passing)?
 
create mock objects and stuff
 
@enderland 99% of the time it should be
 
@durron597 ok. that makes more sense then
 
I just pass in everything as an object and cast it to what it should be
 
6:34 PM
It's possible it's 100%, I'm just hedging myself :)
 
so by passing an interface, you can do "database.init" which might look different for a sqllite or mockdb
but your class doesn't care which it is
vs a class which is creating a MockDB object
 
@Ampt public static void main(String[] args) throws ClassCastException
 
Is this even really possible without interfaces?
 
no no no, you're being too specific
public static void main(String[] args) throws Exception
yes, you just cant change which object your passing in
well you could do something like (? extends SomeAbstractClass)
 
@enderland It's called inversion of control because the database work is done by a SMALLER object; rather than having a global EveryThingYoullEverNeedMainClass
You pass in worker objects and build your application by stitching together these smaller pieces
 
6:37 PM
@durron597 and, if they are interfaces you can basically change each piece independent of others (such as a database change)
 
@enderland Bingo. But it's more code, generally speaking
And, at times, can be more confusing to read, and can lead to large constructors
So you don't want to do it 100% of the time. The conversation I was having with @RobertHarvey earlier was about how it's not always obvious which way to go when designing an app
 
Ok, neato, I didn't realize this was a specific term
I guess I've not worked with interfaces a ton
 
And he was disagreeing with a poster who wanted to go the more verbose route "just beacuse large applications grow from small applications" - he's right, that's not enough of a reason to use IoC somewhere
 
So IoC is the term for designing applications to use DI then? or what?
 
Inversion of Control.
 
6:39 PM
Thanks Dictionary Harvey
 
It's what happens when you subscribe to a Click event in a GUI framework.
 
Oh, duh, so IoC means objects control themselves (in the sense of each implementation of an interface) rather than being configured by their "owner"
 
you use IoC when you think there's a chance you might swap out an implementation of a dependency (such as my example of "command line" hangman interface for "windowed app" hangman interface), or when you want to test something without loading up the entire application
 
The framework calls your code, not the other way around.
What you guys are describing is merely DI.
In computer programming, the Hollywood principle is stated as "don't call us, we'll call you." It has applications in software engineering; see also implicit invocation for a related architectural principle. == Overview == The Hollywood principle is a software design methodology that takes its name from the cliché response given to amateurs auditioning in Hollywood: "Don't call us, we'll call you". It is a useful paradigm that assists in the development of code with high cohesion and low coupling that is easier to debug, maintain and test. Most beginners are first introduced to programming from...
 
@durron597 so, in this example, assuming they had a "console output" class you could make some IOutput and then ConsoleOutput would implement IOutput (for the current use) but then all the "output" calls would be against an IOutput reference?
 
6:41 PM
@enderland Right.
 
The more I learn about interfaces the more I like them
:)
 
That's still technically just DI.
 
Then you end up with class explosions!
EVERYTHING NEEDS AN INTERFACE!
 
Some Java schools of thought have one Interface for every class.
 
@RobertHarvey Again, that's overkill, just like using IoC for everything is overkill
 
6:43 PM
@RobertHarvey just in case? or "we were taught this way" ?
 
@RobertHarvey because more abstraction means better software, right?
 
More LoC = better obviously
As are more files ;)
 
They're the Marquis de Sade of Java programmers. Bondage and discipline taken to a whole new level.
 
@durron597 Thanks for this conversation btw (cc @Ampt @RobertHarvey)
 
But, to be clear, the term IoC is mostly a framework concept (According to Fowler, who coined the term Dependency Injection because IoC had presumptions in it that DI doesn't).
Handing a comparator function to a sort method is a form of IoC. The sorting algorithm is general-purpose; the comparator is a first-class function that customizes the sort behavior. But the sort method calls the comparator, not the other way around.
Merely handing a class some implementation that conforms to a specific interface is not, strictly speaking, IoC, unless the implementation takes control.
Why they call IoC containers IoC instead of DI I don't know. Perhaps the IoC takes place in the mechanism the container uses for handing out dependencies.
> inversion of control (IoC) describes a design in which custom-written portions of a computer program receive the flow of control from a generic, reusable library.
> A software architecture with this design inverts control as compared to traditional procedural programming: in traditional programming, the custom code that expresses the purpose of the program calls into reusable libraries to take care of generic tasks, but with inversion of control, it is the reusable code that calls into the custom, or task-specific, code.
 
6:52 PM
For what it's worth I consider the difference between DI and IoC to exist, it's ultimately academic.
 
Perhaps. But if you're the guy contemplating whether or not to use an IoC container, knowing what IoC actually means forces you to think more deeply about the architecture you are contemplating.
Then it not just a buzzword.
Because the normal and proper use of an IoC container really has nothing to do with IoC, and everything to do with DI.
 
@RobertHarvey Maybe I feel as I do because I learned what DI is and the purpose of it before I had ever heard the term IoC ;)
 
Really, they should be called DI libraries, because that's what they are. Calling them something they're not is just a source of confusion.
Think about what happens when you inject a dependency. What do you get with a DI container? Well, you get the ability to swap out one dependency for another, and you get the ability to centralize your dependency declarations. IoC claims to reduce coupling between classes. Does a DI container accomplish that? If anything, having DI containers seems to me to increase coupling, not decrease it.
IoC is different. When you hand control over to the framework, and the framework provides entry points by which you can customize the framework's behavior, you are decreasing coupling, not increasing it.
Heads will roll.
 
7:23 PM
Stickin to the big guns. I like it
 
user20683
Afternoon all
 
I'm baiting the wrath of the FCube fanatics
 
7:47 PM
Belongs on programmers. Consider this an imaginary vote to close as duplicate. programmers.stackexchange.com/questions/184654/…Jeroen Vannevel 1 min ago
 
user41796
8:09 PM
@enderland - don't worry. My $1 bet says there will be another round coming out of all of this. Or maybe I'm just being overly cynical. :-)
 
psr
8:22 PM
@Telastyn No. Not anywhere I've worked, either.
 
8:33 PM
@GlenH7 No, I'm pretty sure that since both current boss and previous bosses boss are on board it's basically going to be a done deal on that front
and previous boss is going to get a stern talking to from his boss....
 
user41796
Ok, still cynical. Sorry about that.
 
9:17 PM
@Telastyn I've worked places they're peers in pay - that's not altogether that uncommon, but never in regard to respect or influence. Which is kind of a pisser because if they're paid it, they should be held accountable for greater responsibility, but I've never seen that.
 
Good morning everyone.... early greetings.... 2:50 am
 
I'll have bacon and eggs.
Nah, those folks are just the pedants who mumble "my precious" when writing code. — Robert Harvey 37 secs ago
 
why eggs? hw about cheese ?
 
@RobertHarvey pfft Steak and Eggs
@RobertHarvey ...but...it is...precious...
 
No cheese. I took an MAO inhibitor this morning.
 
9:27 PM
your preference
 
user55340
9:40 PM
The overlapping sql question- so or dba?
 
user55340
@JimmyHoffa part of qa not having the responsibility is many times they avoid it.
 
user55340
Until qa regularly starts claiming the veto on a release because of bugs, and are willing to step up to do testing in a timely manner, they aren't going to have the respect that comes with responsibility.
 
@MichaelT yeah, but they shouldn't get equal pay without some of the responsibility
If every release goes out with bugs QA rarely is held accountable in my experience, but a dev team will start catching hell for it.
 
user55340
That was a source of contention at employer^^
 
user55340
Qa was all "we cannot verify the non existence of bugs"
 
user55340
9:50 PM
9
Q: Any tips on how to 'sell' the necessity of dealing with technical debt to nontechnical stakeholders?

G33KA number of stakeholders do not quite understand the necessity of dealing with technical debt preferring new features on top of not very maintainable code. Development is sometimes seen as kids who just want to play the coolest toys. Can anyone suggest anything which will make the job of 'selli...

 
user55340
Over on pm.se
 
psr
@MichaelT Neither can dev. Bugs it is then.
 
Just use your customers for feedback
 
user20683
QA isn't responsible for bugs, they are responsible for the quality of the software, if the quality isn't there to start with, how can they be to blame?
 
user20683
It's like blaming me because your book was missing pages
 
10:05 PM
Looks like Yahoo Mail is either in the middle of an upgrade, or suffering a DDOS attack.
Or the dog kicked out the power cord on one of their servers.
 
user20683
@RobertHarvey yeah
 
Damned inconvenient. You never know how dependent you are on a free service until it is suddenly down.
 
user20683
@RobertHarvey aye
 
user20683
Would you like to play a game? We could play a nice game of chess (actually I don't like chess, I maintain some skill in it mostly for appearances.)
 
psr
@WorldEngineer I do
 
user20683
10:11 PM
@psr you are also a troll of sorts :)
 
psr
@WorldEngineer Maybe a little on my dads side. I'm fine with cold iron but holy water irritates my skin.
 
user20683
@psr Wildly corrosive vomit?
 
user20683
Ability to regenerate body parts?
 
user20683
a vaguely lithic metabolism?
 
psr
@WorldEngineer Metaphorically, mostly in chat. Yes, but only for HTML. Sometimes, say if the TV is on.
 
user20683
10:21 PM
Also it just me or are microservices basically just the Unix philosophy applied to web services?
 
user20683
because they sound like the Unix Philosophy applied to web services
 
11:03 PM
Learning vim makes ssh far more usable when you are at home due to snow...
 
psr
@WorldEngineer Seems like it to me. Plus the idea that you should use web services instead of a monolithic app. Plus maybe some marketing thrown in.
 
11:42 PM
wtf is there really no easy way in C++ to run the equivalent of "which unzip" from a c++ program? and have it's output print to stdout?
 
11:54 PM
ah, nevermind, you can do system("which unzip")
 

« first day (1636 days earlier)      last day (3353 days later) »