HN user

construct0

101 karma

support@construct0.com

Posts18
Comments35
View on HN
www.youtube.com 2y ago

The Unbreakable Kryptos Code [video]

construct0
5pts0
blog.benjaminvr.net 2y ago

A cautionary tale about software dependencies during major geopolitical events

construct0
28pts38
construct0.com 2y ago

Construct0: A non-profit unincorporated association enabling software developers

construct0
3pts0
news.ycombinator.com 2y ago

Ask HN: Repo encryption and decryption for private repositories on GitHub

construct0
1pts2
blog.benjaminvr.net 2y ago

Exploring Rubber duck debugging – The abstract and low- and hightech options

construct0
1pts0
blog.benjaminvr.net 2y ago

My stance on authenticity in times of technological advancements (by OpenAI)

construct0
1pts0
blog.benjaminvr.net 2y ago

Possible misguidance by GitHub in terms of repository licensing

construct0
1pts0
blog.benjaminvr.net 2y ago

construct0's quest: Balancing open-source passion and realities

construct0
1pts0
blog.benjaminvr.net 2y ago

Exploring possibilities surrounding Rubber duck debugging

construct0
1pts0
blog.benjaminvr.net 2y ago

My first microservice app – great mentorship, companionship and experience

construct0
1pts0
blog.benjaminvr.net 2y ago

Observed neglicence and misguidance by GitHub affecting European businesses

construct0
2pts3
blog.benjaminvr.net 2y ago

construct0, the first steps of a non-profit organisation with great aspirations

construct0
1pts0
blog.benjaminvr.net 2y ago

First steps of a nonprofit software dev organisation with great aspirations

construct0
3pts1
sci-hub.ru 3y ago

The Efficient Assessment of Need for Cognition (1984)

construct0
1pts0
news.ycombinator.com 3y ago

Ask HN: Share perspectives and experiences surrounding coupling and cohesion

construct0
1pts0
news.ycombinator.com 3y ago

Ask HN: Implications of (super)permutations on software testing?

construct0
3pts3
en.wikipedia.org 3y ago

Ask HN: Implications of (super)permutations on software testing?

construct0
2pts2
github.com 3y ago

Linq.js – LINQ for JavaScript

construct0
3pts0

The world is figuring out how to make this technology fit and work and somehow this is "behind" schedule. It's almost comical.

Yeah, if you're specific about it and know what to expect it's usually workable. In any case, this blog post is an indicator of what's about to come next.

Yes, there aren’t that many tor nodes. It’s not the safe haven protocol or transport suite people make it out to be.

I see the post got flagged, sad to see but if that's the verdict this'll be the last comment on this post.

The title is not "I caught a Russian developer doing bad things during war!!", the title mentions "a cautionary tale", which from my point of view is a PSA through the means of sharing observations and my interpretation, with some speculation to inform the reader of possible avenues which may affect them, if not through this repository, through another.

To close my writing I'll include the content of a comment in response to a different user, which should define my intent:

"My point would mainly be to spread awareness and share an experience and my interpretation of it, not "slander" and paint a target on my back by namecalling and divulging more information which doesn't serve a purpose beyond wanting clout under the assumption that the war does not affect myself and others around me."

Thanks. Have a good weekend.

My point would mainly be to spread awareness and share an experience and my interpretation of it, not "slander" and paint a target on my back by namecalling and divulging more information which doesn't serve a purpose beyond wanting clout under the assumption that the war does not affect myself and others around me.

Thanks for reading. Have a good weekend.

That's fair, shall I put the names in the article and a link to the repository? Really, it's a war. Do you think I will risk my own wellbeing just to have clout for a few days?

Not to mention opening myself up for the possibility of being sued by one or more contributors for "slander". I chose this approach and won't budge on that - it's not a fairy tale that people are dying and everything is affected by it, the list of embargos is considerable.

Consider that you are connected to the world - including Russia. Would you trust your Russian neighbour if he pivoted his development style, opinions, pace, characteristics? No.

Have a great weekend. Thank you.

Major shifts in behavior from the lead developer does not concern you? Overthrowing the dependencies used and opting in for more experimental and not as battletested JS frameworks does not alarm you?

Going against a strong personal opinion after stagnation of development and a complete pivot on multiple levels is normal to you?

Shall I mention mainframes still run COBOL? Should I introduce the latest version of this library to achieve the same? You do know it entails more chance of something wrong happening, and yes the developer is Russian, didn't we have an advisory against Kaspersky?

Why would a repository with six figure stars be negligible and Kaspersky not? Please read other comments as well. Thanks for your perspective and have a great weekend.

It's more than just this - I wouldn't write a "conspiratorial article" out of nothing, but alas I can not provide depth without risking identification of the people involved and painting a target on my back.

I am watching the advisories for the dependencies closely. Please check my other comment as well.

Thank you, have a great weekend.

Thanks for your comments. I have to admit that it is shallow - going in more detail would risk identification of the people involved and paint a target on my back.

I do realize that he may have simply changed his opinion - yet it is the most controversial one and he stood by it ideologically as expressed numerous times through a variety of mediums.

It's a bit tinfoil hat, but I am disappointed and there's no harm in informing others about these observations and this experience. Mind you - and that's about all I'll add - that the repository stagnated in development for some time, increasing my senses about something being off considerably (browser extension ownership for example get bought frequently by criminals to convert a user base into a cash cow, or worse)

Disclaimer at the end of the article: If I am totally misinterpreting my observations and the Discord hostility without even an attempt at producing counter-arguments or productive and professional openness and communication, at least it serves as a cautionary tale of what could be. In any case, no disrespect or attempt to taint anyone's (opensource) software development ventures and/or their personality is intended. The name of the project or its developers will not be shared, if you can find it, be discrete or this article will be removed. Thank you.

Thanks for your time. Have a great weekend.

Thanks for taking the time to reply, very valuable.

Little tangent but in regards to the coupling/cohesion part; makes me wonder why some developers seem to have no problem with accepting strict boundaries when dealing with third party (web) APIs they have no control over, they use parts of the interface they desire, they cherrypick/reduce the response content and create a separate model appropriate for their usecase/context and they tailor the behavior to that.

This appears to go out the window to some extent when they do have control over the existing model and behavior. Far more appealing to use the model directly and modify or extend the behavior than to "needlessly" introduce some duplication in order to establish clear boundaries.

Usually I search for something which is exposed to the user of the repo (particular CLI command, particular interface or function, particular GUI element, ..) because I want to understand how that part works and to me there's no better way to achieve that than starting where the user starts .

Repeat this enough and architectural patterns reveal themselves naturally.

Hi HN.

Junior software developer here.

I recently stumbled upon the minimal superpermutation problem and I'm trying to figure out what the implications are for software developers when it comes to effectively testing their code.

(Below is an explorative example in an attempt to try and get more clarity about this. Perhaps I'm looking at it in the wrong way, hope some people can share their view on this. Questions at end of post.)

The best example to illustrate what I mean by that would be to use a complex online videogame as the example of a software application in need of effective testing.

Such a videogame, to me, consists out of a considerable amount of active and mutable state which is exhaustively queried and constantly in flux.

Consider that an optimal amount of coupling & cohesion is pursued but that due to the videogame's inherent complexity, developmental time constraints, managerial decisions, incompetency, .., the development team inevitably introduces mistakes in this regard.

Envision a scenario where a single state entry can have its value queried and altered by n actors due to some of the entry's characteristics in relation to other entries' characteristics resulting in an implied need for relational connectivity.

A simple example of such an entry would be the state of a particular entity represented by an enum.

With testing in mind, imagine that in order to provide security to block prohibited state transitions a table could be made containing the permitted state transitions.

Sounds like a good solution when there are not a lot of possible states defined in the enum. Sounds even better when you realize that the table is an allowlist and that not all transitions have to be included. Sounds great when you're only considering single-step state changes.

However such a table is not aware of the context encapsulated within an actor, the actor may alter the state as permitted by the table, even when it may not be the appropriate state to change to, e.g. due to a logical error.

My interpretation is then that in order for the transition table to become more effective in preventing undesired transitions, it is implied that it must contain the constituents of an actor's context which are determined to be in some way involved in the logic which decides which state the enum should transition to.

It seems to me that including those variables in the table would lead to a large amount of scenarios to consider and write tests for. It becomes even more tricky when those actors have some sort of relationship with eachother, and even trickier when they themselves have dependencies.

Then there's the possibility that you do not want to perform a state transition you have performed before, that you do not want to do that when one or more actors has a certain state, and so forth.

Whether such a table would have any value beyond a certain amount of columns, I am not certain. But this line of thinking made me think of permutations (if you'd be willing to have subsets) and makes me wonder whether the minimal superpermutation problem has any value when talking about testing software?

In my experience so far writing unit tests I can usually assert that all paths have been covered, but once in a while I'll come across a case where testing all possible combinations becomes a near impossible task.

While searching I came across "combinatorial testing", seems relevant but still fail to see how it all ties together (theoretically and actionably)?

https://personal.utdallas.edu/~ewong/SE6367/03-Lecture/29-A-...