« first day (1922 days earlier)      last day (1258 days later) » 

00:00
RELOAD!
[rubberduck-vba/Rubberduck] 2 closed issues.
[Minesweeper] Games Played: 41, Bombs Used: 20, Moves Performed: 5760, New Users: 1
 
2 hours later…
01:58
bit late, will skip 2019 SO ads - but how's that for 2020?
02:57
Could this ad be animated like a gif as the duck does a rocking horse motion back and forth as IvenBach on a unicycle? @MathieuGuindon otherwise looks nice and clean
thanks :)
@PeterMTaylor first time in a while since I’ve rode my uni today.
I still owe Mug a video... Where does the time go? Days are flying by.
 
2 hours later…
 
3 hours later…
08:00
@MathieuGuindon Love the overall look. I'd probably consider making the Be a ducky a tagline in all ads, and have Let's Mock<VBA> & Contribute * Learn * Teach & others be a hook. That would make the brand look more consistent, I think.
 
6 hours later…
13:42
@this & @MathieuGuindon - thanks guys. I asked the question yesterday and didn't stick around long enough to see the answer. I recall seeing the RS.MoveFirst argument now that it's been mentioned again, and I agree with the assessment that it's probably almost never necessary. I'll begin adjusting code as I come to it.
@MathieuGuindon I like all 3, but this last one might invite additional mocking that VBA doesn't really need. People do enough of that without prompting...
14:06
@FreeMan Maybe if it was spelled Moq<VBA>? Do end-users know that Moq is being used under the hood?
I don't think they are.
but I don't think the ads are targeting end users, either.
Frankly, a year (or two) ago I would have taken that last one totally differently than the way it is intended.
1. Can the [Viewing a live preview of parse tree](Viewing a live preview of parse tree) wiki page be updated to point to the visualizer I've written?
2. Should it keep the directions for using Eclipse?
Naw, no point of using Eclipse
TBF I would not wish Eclipse on any enemies.
The visualizer over there is OK but the path to get it working is horrid.
14:16
@this The Eclipse visualizer?
Yeah
the whole process feels like you have to first plant a whole jungle and breed gorillas just in order to get an banana.
@ZevSpitz of course, go ahead! :)
I'm almost done editing the wiki
14:25
oh
nevermind then!
@this Visual Studio puts Eclipse in the shade!
There. Much shorter and simpler!
@mansellan it was shady to belong with....
@this Nice. Isn't the GIF a little distracting?
On my side, have to scroll down anyway, and gives a quick preview
It is a wiki, though, so anybody can edit it further. I decided it's best to just link to your GH site so that our instructions don't go stale
14:46
@this that is an interesting analogy...
@Feeds you go girl! another twit tweet from today!!
@FreeMan been given that analogy as an argument in favor of plain procedural code vs OOP
@MathieuGuindon you have been given that analogy or have been giving that analogy?
given
as in, "with OOP you want a banana and you're given a jungle"
just checking...
Leave it to me to abuse and overuse an analogy beyond what it was originally used for. ;-)
15:00
Nah, OOP gives you a banana if you build one.
I was actually thinking about OOP vs FP the other day.
I decided I like FP better because a pure function can be worked on and made correct in isolation.
You can write a piece of code, test it, and know 100% that it will work.
In OOP, it relies on the call sequence because of field assignments, etc. In FP, it doesn't.
With a well-built FP language, you know that you have the only reference to a copy of data unless you explicitly override it.
(Prevents race conditions, etc.)
And it enforces that you check common error states by encoding them into the type system (i.e. null/Maybe<T>).
So you either know 100% you have to deal with a potential null state before you get the value, or you 100% know that it can never ever be null.
It's kind of like a for vs foreach. The foreach will never give you an off-by-one error.
At the end of the day, a well-structured FP program looks surprisingly like a well-structured OOP program.
You have modules of related content, interface-like types (in C# terms, basically a class of delegates).
You have method-injection instead of ctor-injection.
For example, instead of injecting your DB instance to the ctor and using it over multiple methods, you pass it into each method.
But, if your language supports currying, you can make that the first parameter and pass it in at one point to create a new function to pass around where you don't need to worry about it.
15:46
In any case, I'll believe the FP-or-death zealots when they show up with a VBIDE add-in written in F#
Not having ever done FP, lambdas feel like just the right amount of FP. I'm sure I'm wrong though :-)
15:59
@MathieuGuindon That sounds like a challenge for Hosch.
I look forward to witnessing FP's failure
It could do it.
They wrote VS addins in it.
And VS is, or was until recently, just as hard to write addins for, according to the authors.
FP sounds interesting. Wish I had more time to dive into it. #SoLittleTime
Eric Lippert on the downsides of the paradigms in functional programming -- stackoverflow.com/a/2835936/111794
> When you fire the machine gun at the alien, most people do not mentally model that as the construction of a new alien with fewer hit points; they model that as a mutation of an existing alien's properties.
That's really the biggest problem with the adoption right there.
You really have to change the way you think about things.
The mental model is different, but then we always have to change our mental model to advance.
16:14
> I'm still experiencing this issue in 2.4.1.4925 when adding either a code module, class module or userform by right-clicking in Code Explorer. It looks like the module was added immediately but I got the same blue spinning wait indicator. The right-click menu didn't disappear and appeared on top of all other windows, even when switching apps. I couldn't get back to the VBE window (it was open but wouldn't take focus) but I could get back to MS Excel though it was locked up. After 1 minute
They had to invent a whole new stitch using two threads before they could make sewing machines work.
> I love functional programming, I joined this team because I wanted to help bring concepts from functional programming into C#, and I think that programming in an immutable style is the way of the future. But there are enormous costs to programming in a functional style that can't simply be wished away.
That's basically it. OOP took over in businesses when things went mainstream because accountants and the like didn't want to change their mental model before they could write VB and the like.
And from that point on, everyone first learned what was common (VB, Java, etc), and FP kind of got pushed to the side until now, when the language designers are bringing FP back into the languages because it has benefits OOP doesn't have.
@Hosch250 no. accountants don't care for OOP. code is a mere sequence of executable statements - that's procedural code, not OOP.
@MathieuGuindon OOP is basically grouped procedural code, though.
> Also, the issue hasn't been consistent. There are times I inserted modules using RD without issue. Can't remember which builds but the problem has been intermittent.
As is FP--without the global variables.
16:20
OOP doesn't inherently says "global variables"
No--just saying OOP supports global variables by default, and FP doesn't.
And that's the difference between an accountant and an OOP programmer at the end of the day :P
> Same issue when inserting via the green plus button in Code Explorer. The issue did -not- occur when inserting a test module.
@Hosch250 because void Main is in a static class?
@MathieuGuindon No, because you can have a public static field referenced by anything.
> I'm still experiencing this issue in 2.4.1.4925 when adding either a code module, class module or userform by right-clicking in Code Explorer. It looks like the module was added immediately but I got the same blue spinning wait indicator. The right-click menu didn't disappear and appeared on top of all other windows, even when switching apps. I couldn't get back to the VBE window (it was open but wouldn't take focus) but I could get back to MS Excel though it was locked up. After 1 minute
16:22
Pure FP doesn't even have the concept of a field shared by multiple functions.
It all has to be passed in.
> Also, the issue hasn't been consistent. There are times I inserted modules using RD without issue. Can't remember which builds but the problem has been intermittent.
> Same issue when inserting via the green plus button in Code Explorer. The issue did -not- occur when inserting a test module.
And again--it all breaks down at the boundaries. You can simulate a public field by accessing a database in any language.
Any paradigm does, though.
> I'm still experiencing this issue in 2.4.1.4925 when adding either a code module, class module or userform by right-clicking in Code Explorer. It looks like the module was added immediately but I got the same blue spinning wait indicator. The right-click menu didn't disappear and appeared on top of all other windows, even when switching apps. RD status was "Busy". I couldn't get back to the VBE window (it was open but wouldn't take focus) but I could get back to MS Excel though it was lock
That's why attackers always go for program boundaries.
@Hosch250 So it's all DI for everything? How a class in C# can have a backing field that member methods can see they don't need to have that backing field passed in? FP You have to pass everything in always all the time?
16:24
that said I also agree with Lippert's answer as a whole and its last paragraph more specifically: it's about the type of problems you're facing.
Inside the program it's (relatively) easy to be secure. It's easier to get bad data into the system that breaks things than to break things with good data.
@IvenBach In FP, you wouldn't have the field. You'd have another function parameter.
:blush: My nonexistent FP experience is showing.
@MathieuGuindon Exactly. That's why I like OOP for UIs and DBs.
Because they are all about tracking state. You can do it in FP--and people have. But I find OOP works better.
@IvenBach don't worry, I have none either
But when it comes to the logic between the UI and the DB, for example, that's where I love FP.
16:28
I don't consider OOP to be the #OneTruePath. It's a tool I'm learning to use better. FP is another tool I'd like to learn. Then apply it where most appropriate.
And FP has some AWESOME data providers for read/write from the DB that are basically like Dapper built into the language.
> I'm still experiencing this issue in 2.4.1.4925 when adding either a code module, class module or userform by right-clicking in Code Explorer. It looks like the module was added immediately but I got the same blue spinning wait indicator. The right-click menu didn't disappear and appeared on top of all other windows, even when switching apps. I couldn't get back to the VBE window (it was open but wouldn't take focus) but I could get back to MS Excel though it was locked up. RD status event
So I like to do my UIs in C# and have my logic DLLs in F#.
And they tie together quite nicely because it's all .NET.
@Duga this "waiting for OLE action to complete" thing, could it be some COM access clogging up?
@IvenBach me neither - especially in VBA, where modularized and properly abstracted procedural code is perfectly fine. I hope my blogging about OOP isn't coming across as "VBA code must be OOP, otherwise it's a spaghetti mess"
When reading it I get the feel that 'OOP is better suited' but not a 'You must do it as I do it'.
16:34
what I'd want is to come off as "this is how you can do OOP in VBA, because yes, VBA can do that too"
Could take a poll of RD users on twitter.
lol I guess
My desire to learn OOP may be coloring my perception.
I'm pretty sure everyone landing on RD News has a similar curiosity wrt OOP
Forcing myself to use OOP as opposed to just Procedural has made leveled up my coding for sure.
I'm a lot more critical of any procedural code I write now as aside benefit.
16:38
@MathieuGuindon I thought the same but apparently it has existed since July. github.com/rubberduck-vba/Rubberduck/issues/5053
Should all reported issues of it be linked?
yes.
the earliest version cited is 4719, but judging from the PR, I don’t think it was around that time. May have existedfor a while prior toJuly
> I'm still experiencing this issue in 2.4.1.4925 when adding either a code module, class module or userform by right-clicking in Code Explorer. It looks like the module was added immediately but I got the same blue spinning wait indicator. The right-click menu didn't disappear and appeared on top of all other windows, even when switching apps. I couldn't get back to the VBE window (it was open but wouldn't take focus) but I could get back to MS Excel though it was locked up. RD status event
16:53
@IvenBach, may I check a C# assumption with you?
17:10
@puzzlepiece87 Sure.
gosh the entitlement is unbearable.
Guys my question is clear enough. If you don’t like my question go out with your dog, or clean your car. I don’t understand why here i come to seek for help and i found only nerds wasting time NOT helping people. If uou don’t understand my question maube you are not clever enough or not well trained in this topic so please pass by and watch something else. I don’t need who tell me how to write a question. I have a life, so now i go clean my ass , ‘cause in Italy we have a bidet, and you, maybe, waiting to have this fantastic techno ass cleaner in next generation, go outside and take some air. — Filippo 26 mins ago
sorry for sharing, had to vent it :)
Breathe Mug. The fumes coming off the Pineapple are getting to you.
STACK OVERFLOW PEOPLE BAD
You've been warned to stay within the walls of CodeReview.
17:15
Honest question: Is it just me or do non-native English speakers tend to have more responses like that?
It seems like they occur more often to me. Or it may just be that the English ones don't register for me.
@MathieuGuindon wow.
VTC
So, i bet that if i am the ceo of facebook and you are in front of me waiting for your job, and i ask you this question, you will reply correctly as much you can in 2 minutes! So if you are here NOT to help, please go out and walk — Filippo 58 secs ago
uh....
IME it's people that come to SO expecting to have a bad experience
ironically they're always the ones arguing their question is perfectly fine as-is and refuse to edit their post to clarify anything whatsoever, and then wonder why the world is so unfair.
17:35
Especially when there are multiple person who say it's not clear.
One person? Maybe that person is a legit idiot. Two? I'd start to wonder. Three? Ok, I'm definitely the idiot.
to claim that 10 people are idiots seems.... brash?
Time is too valuable to waste on Pineapples.
@this not 10 - the whole million-or-so bunch of SO users
That's my point - he should have stopped at 3.
Dunning-Kruger effect at its finest, I guess.
hm. see, for me the first commenter to request clarifications has to be correct - the reader doesn't see my IDE and it's very likely I forgot to include a crucial piece of information that's right there in my face, but nowhere in my post
Oh, agreed. That's much more sane thing to do, but if you wanted to be pessimistic about things, you probably could get away with presuming this one or two individuals are idiots and do not understand your question.
but if you persist on assuming that 3 or more individuals are idiots, then well, your calibration's broken.
17:43
when you ask on SO you need to leave your self-entitlement at home, take a deep breath of pure humility, let it sink in, then post.
also: answering your question is likely exactly no one's highlight of the day
Flag the bitch and move on.
But then again, I frequently see responders on SO answering the wrong question.
17:58
@Hosch250 yep. deleted all my comments. what a duck. still arguing and 2 hours later still hasn't edited their question. voted to delete too.
@IvenBach No. There are many native English speakers who have that self-centered, entitled, "the world owes me everything and I don't have to do anything for it" attitude. Not just on SO, but IRL, too.
Oh, man, yes.
Just watch the news comments during the presidential election.
You see the worst of both sides.
I chimed in, but didn't feel like wasting the electrons to share it here...
> The world owes me X, Y, and Z!
> I don't care about nobody! Send everyone I don't like to X!
@FreeMan saw it
@Hosch250 Twitter is more than enough for that lol
18:03
Unfortunately, good, clear, concise communication is difficult and not enough people are willing to spend the time and effort to do so. I see that daily at work. I spent 30 minutes looking for a record in data set x yesterday. Turns out it was in data set y. It was thrown into a question about topic x, but was really about y, but the other person never bothered to mention that fact.
I used to read the NPR news occasionally.
It was equally bad, LOL.
This other person frequently deals with both x and y as I do, and there was nothing to indicate she'd changed topics on me... :/
Even when people do try, they sometimes miss things.
Sometimes when I try to deal with multiple things at once, sometimes I forget to mention changed topics too.
Or I think I already mentioned it when I haven't.
But when you get corrected, always assume its your fault until proven otherwise, and don't be a jerk about it.
^ that's the critical "humility" part some people just don't seem to get
Why should they? They're the greatest gift to humanity, obviously!
18:09
I learned that when arguing with my mom. If she's losing an argument, she'll just play the "authority" card.
So if you want to win, you really have to have the cards stacked on your side.
And slam them all on her before she can respond to any of them.
It works with anyone, though.
depends what the subject matter is and whether you're talking to someone with a MAGA hat flying a confederate flag on their pickup truck, but yeah
I'm thinking that the test engine shouldn't run when the parser is still running. It is available for use even in resolving declaration stage.
makes sense
18:16
the puzzling thing is that as far as I can tell, the last significant changes was made to test engine in about Feb
but it was not until April when it was first reported
in other news, I've extracted the PartialExtensions partial classes from the monolithic extension class. turns out there aren't too many of 'em, and we don't really need a ton of nodes for CPA either, so ....extending the ParserRuleContext for CPA annotating looks like it's going to work
:+1:
@this telemetry data tells us ..oh, wait
:-D
so, my plan is to reimplement the INode stuff into ParserRuleContext -- but then walking the parse trees to stick a Declaration here and an IdentifierReference there really feels like a tree traversal that doesn't need to be happening. or rather, that the declaration/reference resolver could be doing this. should it though?
18:21
you could assign a CPA visitor to the resolver pass
wait, does CPA require all declarations to be known?
then you can't not re-traverse the tree...
18:22
do we also need the identifier references?
but if the resolver sticks a ref to the Declaration/IdentifierReference into the parse tree node that made it spawn it, then that part is done and the CPA traversal can focus on the CPA stuff
@this yes
@MathieuGuindon that would make it cyclic, though?
(parse tree referencing declaration referencing parse tree)
yeah
fuuuuuuuuuuuh
18:28
would a weak reference be a solution?
was going to say exactly that lol! #GreatMinds
yeah it has to be
otherwise, ....IDK what a solution can be, other than a massive open-heart surgery
(or open-cranium, depending on what body part the parse trees and everything that touches it is analoguous to)
oh @M.Doerner, just in time!
Just wasn't logged in.
I would really appreciate if we did not intermingle resposibilities in the reference resolver.
I don't think it'd be right anyway given the requirements to know the references anyway.
it would have to be a separate pass.
18:32
two
Walking the trees is not that expensive.
(need to first annotate them trees)
parse tree nodes having a weakref to declarations and identifierrefs, makes sense?
@FreeMan ~.~ Confirms my unconscious bias. I'll stick to my corner of CR and the RD pond. Much nicer people.
@IvenBach Thanks! Is my assumption that if I have people enter a property of my model through a WPF window and it never changes after that, that it's okay to make that property a constant, correct?
I'm trying to get around C# whining about my switch() case statement:
case "NM1" + model.NewElementDelimiter + "85" + model.NewElementDelimiter
@MathieuGuindon would telemetry report how many times users go looking for Extract Method?
18:43
@FreeMan Define how we'd know that they actually wanted "extract method" so we could report it.
What if they were really looking for "scramble parameters"?
How would you tell the difference?
That was a subtle jab. Apparently too subtle. #CommunicationFail
Earlier I talked about the need to track the Undo.
e.g. if user execute an action, then undo it within X seconds, that is an indication that it wasn't what they wanted to do
esp. if there's a high % of execution + undos.
@Hosch250 you might get a kick out of this... i spent ~15 minutes helping someone put together a macro for data sorting (they have an ERP export they try to modify in Excel) and it ended up proliferating ~20k in type ii (cost avoidance) spending; the company utilizes a third party IT service and that IT company tried to bill for the time not spent supporting the ERP system, for the same value
Not sure I get it.
You help someone write a script to maintain your data and reduced a third-party company's work?
And then they billed you the same?
because that was time/effort expected by that company that they forecasted, supposedly
i don't even know what to say to that, but it's... definitely a bit ridiculous
18:53
@Cyril head hurts
exactly... i didn't have anyone to describe the ridiculousness to, so figured i'd chuck it at you lot
@this if it didn't happen i don't think i could make that shit up
those behaviors are pretty much why everyone sees IT as a cost center, TBF
19:10
That and because they want to be in control of everything IT-related and then take ages to fulfill a simple request.
@puzzlepiece87 Are they accessing a property on the ViemModel?
@IvenBach No.
Why would you make it constant?
^ I don't quite follow then.
Then you cannot choose it on runtime anyway.
19:16
Can you explain a bit more of what you're doing?
@IvenBach @M.Doerner This probably doesn't answer your questions correctly, so please help me to answer them better, but I'm exploring different methods of resolving the "a constant value is expected" compilation error for case "NM1" + model.NewElementDelimiter + "85" + model.NewElementDelimiter
How about using an if statment instead of switch?
My next idea was to just make that property of the model constant, since it gets set one time and then never changes, but I think based upon @M.Doerner 's statement "Then you cannot choose it on runtime anyway." that that would be a bad idea.
@M.Doerner Sure, sounds fine. I'll do that instead.
Thank you @M.Doerner and @IvenBach!
Don't thank me, I didn't do anything.
@IvenBach I appreciate you taking the time to respond and try to understand what I was saying :)
Feedback request: In the visualizer, when filtering out tokens in the token list, should those tokens also be filtered out in the tree? For example, if I say I only want to see IDENTIFIER tokens, should the tree also show only IDENTIFIER terminal nodes? The rule nodes would be the same in any case.
Apparently the news of me leaving hit my boss pretty hard. One of my coworkers was in the same meeting when I told her, and she said my boss didn't say anything after that. She's usually pretty talkative.
20:02
@Hosch250 You didn't tell your boss you were leaving in a meeting, did you?
No.
My boss was in a meeting, and she messaged me about setting up another meeting to go over product X
And I said "You may not want me involved, since I just accepted a job."
I'm wincing over here.
Who did you give your notice to?
Nobody yet.
They're nice over here :)
They are trying to get me to stay still.
They asked me to not hand in my notice until 2 weeks before I leave.
Since they said it can spoil relationships if people know for too long.
So, I'll hand in my notice mid-October.
sounds about like how my analyst colleague quit last month; boss knew well in advance to start looking for replacement
this always cracks me up
Your output makes no sense - why are there blank space cells in between the colored ones? What is the pattern there? Also, please use the print screen key on your keyboard next time instead of taking a picture of your monitor, it's hard to see your pictures clearly. — dwirony 50 mins ago
posting a picture of your screen is actually like ten times the effort of putting up a screenshot
The question is messy, but at this point, I'd say it's actually on-topic.
Probably a pretty trivial solution.
A dictionary for color names/color codes.
Then, something like Sheets("Name")[get-value-from-column].BackgroundColor = pull-from-dictionary
And set the text the same way.
20:18
aye, the DVs seem to predate the edit that added the code
(countered)
@Hosch250 My strong suggestion for next time is to ask your boss if you can talk with her about that rather than bomb-dropping on her over IM when she's in a meeting :/
LOL.
OK.
And don't do it at the end of the day.
Or they'll get in a car accident on the way home.
#ThatThursday4pmMeeting
Well that was a fun little earthquake.
A real live earthquake?
20:24
Either that or:
I've never felt an earthquake :(
Jun 4 at 20:16, by IvenBach
CoworkerWalkingIntoGlassDoor++;
Earthquakes aren't too bad. How in Gourds name people live with hurricanes every year is beyond me.
Everyone's acclimatized to the disasters of their region.
20:25
until Yellowstone blows up
@MathieuGuindon Can you still be acclimatized if you're newly extinct? :P
"Being dead is a learning experience for all of us"
haha
@Freeflow's account just got ghosted into an anonymous user?
3.9 on earthquake.
FWIW, I just confirmed that it no longer throws when loading type lib via the com collection. we can remove the #if LOAD_USER_COM_PROJECTS safely, it looks like
That was not the reason for the conditional compilation.
The reason was to avoid useless work while nothing uses the COM projects.
20:38
that doesn't match with what the comment says:
//TODO: Remove the conditional compilation after loading from typelibs actually works.
wtaf
If you have clearer wording for "Instead, please use tags [Excel] and [VBA]", feel free to edit the tag wiki. Please just don't start sprinkling the doomed tag everywhere, thanks. — Mathieu Guindon 44 secs ago
"it says 'please', therefore I don't have to do it"
20:54
Oh, that was in reference to getting something useful. When I added it, we still got unusable stuff because of limitations of the original typelib API.
Is it still pending removal? Will it be that way for the next 6-8 somethings?
@MathieuGuindon Roll-back war!
At this point, I'm considering using it to provide the types because I'm running into problems with the type identity.
Then feel free to remove the conditional compilation.
I don't know yet if that's the solution I'll move forward with, though. We'll see.
Nice catch. I missed that line.
That wasn't a superpower I was aware you had. :) — Catija ♦ Jun 25 '18 at 18:53
feel like someone needs a nudge since it's already a year since the "2 month implementations"....
@this It's actually 2 months since Custom Filters was released. meta.stackexchange.com/questions/330326/… I'm assuming that was the holdup.
Either way, a nudge is needed, no?
21:23
send a daily pun to Shog until something happens. it worked for CR's graduation anyway.
pun?
Like, I'm going to 'pun'ch you if you don't hurry up and do that.
@MathieuGuindon Looks like I nobbled something on my PC as it's not allowing me to comment until I've got 20 point but my phone is working just fine.
You may have accidentally created a new account, that chat profile was linked to a Freeflow user with 1 rep on MSE, with MSE at the home site
@Vogel612 could sort it out if needed
(I think)
ttgh
22:06
Interesting... permissive licenses more popular than copyleft, and increasingly so.
I can see why commercial-backed FOSS would favor permissive licenses. Ditto for developers' hobby project.
I think those who has the most to gain from copyleft would be the non-profit organizations.
I have to admit, I try to avoid copyleft these days (no offence!)
mind you, i use the term "non-profit org" very loosely
If we do client/server, potentially the client could be non-GPL...
(if wanted)
e.g RD is one such entity (albeit not legally). I'm not clear if Linux is actually an org or just a consortium of developers contributing.
IDK. multiple licenses sounds messy to me.
22:15
yeah, possibly. depends if they end up in one repo or two. two would complicate packaging...
anyway, not a problem for now, just throwing it out there.
It's kinda ironic though, the copyleft which was so important to get FOSS established is now seen as kinda restrictive...
I think it's simply just the demographics
meaning, we now have much more commerical backers in FOSS than we did a decade or two ago
Think back to 90s. Ask Microsoft if they'd do FOSS.
Ditto for Google.
Heck, even Apple, too.
yeah... but would that have happened without FOSS getting big (LAMP), and would that have happened without GPL...
Now all those 3 big companies are in it, albeit not using copylefts.
Frankly, I don't think it could have came along without copyleft.
^
It was a necessary step along the way
It might be more interesting to see if the decline is actually because the projects that were using GPL are changing to permissive vs. simply getting much more FOSS projects started.
22:23
Instinct tells me its the latter - new projects tend to be permissive.
Relicensing away from copyleft is a PITA, due to its viral nature. Use a GPL lib, hey, you're GPL...
"viral" in the technical rather than perjorative
that's why I think it's fading
Exactly so that's why I think it's just the demographics and not actually decline per se
Agreed. But it might reach a tipping point, where its such a minority that projects (libraries especially) will be shunned for alternatives.
Nowhere near that yet of course
Law of supply and demand
Core 3 GA in 2 weeks... Feel like a kid waiting for Christmas. Gonna get converting at work the second it lands :-)
(almost literally...)

« first day (1922 days earlier)      last day (1258 days later) »