bryan over at Pipedot has released the source code for Pipecode, the software running pipedot.
Pipecode is written in PHP and the code is using the GPLv3.
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
(Score: 2) by dotdotdot on Tuesday May 06 2014, @07:06PM
(Score: 2) by zafiro17 on Tuesday May 06 2014, @07:09PM
Ditto that. Soy's got a bigger and more active community, but wouldn't it be fun to graduate to something easier to maintain than old Slashcode? Best of both worlds?
Dad always thought laughter was the best medicine, which I guess is why several of us died of tuberculosis - Jack Handey
(Score: 2) by buswolley on Tuesday May 06 2014, @07:22PM
Can we ditch their lame color though?
subicular junctures
(Score: 0) by Anonymous Coward on Tuesday May 06 2014, @07:47PM
Yeah dried blood is so much better on the bikeshed.
(Score: 3, Informative) by elf on Tuesday May 06 2014, @08:06PM
I am a big fan of the pipedot color scheme :) Pastel colors are much easier on the eye.
(Score: 2) by NCommander on Tuesday May 06 2014, @08:11PM
User-selectable theming is in the next major slashcode release (for early June). If you are good with CSS, drop me a line, and I'll help you get started with retheming our CSS for a "lighter" pallet.
Still always moving
(Score: 1) by Angry Jesus on Tuesday May 06 2014, @09:10PM
I'm looking forward to it. For me, the red has worn thin, I can't really say why, it's just a feeling that's developed over the last few weeks.
(Score: 2) by buswolley on Tuesday May 06 2014, @10:34PM
Angry Jesus doesn't like the color of blood?
subicular junctures
(Score: 2) by DECbot on Wednesday May 07 2014, @06:52AM
Easter might have triggered some PTSD.
cats~$ sudo chown -R us /home/base
(Score: 2) by Reziac on Wednesday May 07 2014, @03:00AM
I like the colors on both sites (when I have 'em turned on -- usually I disable site colors since white backgrounds hurt my eyes). But letting the user configure that should reduce the bitching about it.
And there is no Alkibiades to come back and save us from ourselves.
(Score: 2) by elf on Wednesday May 07 2014, @11:53AM
Good to hear :) I'll help out with the "pastel" theme if you like, I know CSS fairly well (Not an expert but can find anything out I don't know). I'll drop you a PM for further details
(Score: 2) by NCommander on Thursday May 08 2014, @05:36AM
I missed your ping on IRC; I've been dealing with laptop issues all week (long story), and I've been somewhat hit or miss to reach. Try reaching paulej72 or mrcoolbp on IRC as I'm going to be out for the next few days.
Still always moving
(Score: 2, Interesting) by Ethanol-fueled on Tuesday May 06 2014, @09:04PM
Some pastel colors are easier on the eye. I used to tell my foreign* girlfriend that she looked like a walking candy necklace in her native dress.
That being said, I second your statement about Pipedot's color scheme being way more pleasing to the eye. And Pipedot's wicked-cool logo...man, if that's another thing Pipedot got right, it was having a contest for its readership to submit their own designs.
However, both Pipedot and SN are all about the discussions -- and for those, speaking from a naïve user's perspective, SN wins hands-down.
* Specific nationality of girlfriend omitted because it would be racist hate speech to specify
(Score: 0, Troll) by DECbot on Wednesday May 07 2014, @07:00AM
I hope you reach +5 Insightful/Informative.
cats~$ sudo chown -R us /home/base
(Score: 0) by Anonymous Coward on Wednesday May 07 2014, @08:18AM
I was left wondering what words he would have otherwise used to specify her nationality. Unless he calls her a "ching chong curry munching sheep fucking nigger" I can't imagine too many ways you could describe nationalities in such a way that it would be considered racist hate speech, but that's just me.
(Score: 0) by Anonymous Coward on Wednesday May 07 2014, @01:50PM
Indian is unfortunately ambiguous when used in the United States and can be taken that way.
(Score: 0) by Anonymous Coward on Thursday May 08 2014, @08:19AM
It used to mean Native Americans....
Nowadays it is interchangeable with the expression 'H-1B'....
(Score: 2) by mmcmonster on Tuesday May 06 2014, @07:29PM
Sounds like a good idea. It further distinguishes us from /. and gives some new options. Also, a total rewrite was likely sorely needed, given all the complaints about the source over the last couple months.
Now that the source is new, presumably it's small enough that someone can understand all of it?
(Score: 5, Interesting) by NCommander on Tuesday May 06 2014, @07:33PM
I took a good look at the pipedot source code when bryan announced it was released on #soylent, and I've read a fair bit of the SN bashing on their website as well. Please note, this isn't intended to be bashing on pipedot (which I consider a sister site to this one, given our shared orgins), but I think we'd be better off staying where we are.
Pipecode is somewhat of a mess, and lacks anything resembling a templating system; most of the pages appear to admit raw HTML via writeln() lines, and the code logic and the frontend are intermixed with each other. While I suspect pipedot is lighter than slashcode, slashcode is known to scale considerably. Furthermore, pipedot is not at feature-party with slashcode; journals, and many other bits of functionality are still missing, which means if we were to migrate, it would be a net loss for the community.
Although I've bashed our codebase, the fact is slashcode pretty well organized, and while some of the code isn't great, it *is* maintainable, and has pretty strong division between backend, frontend, and UI, which means its possible to change something without affecting the other; we can edit a template and not have to edit any .pl/.pm files to do so, and the base set of libraries allows us to interact and interface with the database with a consistent API (this is used for slashd scripts for instance); these aren't features we should give up lightly.
I do recognize that pipecode *does* have a cleaner interface, but I suspect many of the critisms laid at SN will be resolved with the 14.06 release, which has a reworked D1.5 discussion system (you can see what we're doing on dev.soylentnews.org; you need to change the commenting view to "Improved Threading", but we'll be making that the default). We've also undertaken efforts to modify /code's templating system to the point that user-selectable themes are now possible, and opens the door for doing a redesign w.r.t. while leaving the current "classic" view alone.
I have huge amounts of respect of the work that's gone into pipecode, but its not a slashcode replacement, or at least not yet. I'll be watching pipedot and pipecode's evolution, and its possible we might discuss such a potential migration in the future when pipecode is more mature and stable, but today is not that day.
To bryan, three cheers though on getting this out, and I do hope you can attract developers from your community to help continue to pipedot. Best of luck to you, mate.
Still always moving
(Score: -1, Offtopic) by Anonymous Coward on Tuesday May 06 2014, @07:40PM
BooM
(Score: 4, Insightful) by elf on Tuesday May 06 2014, @08:03PM
I hope both projects are successful. They are written in 2 completely different ways but there is no reason why they both can't steal idea's off each other in the future. Scalability is always a concern for a large site and I think Slashcode has the edge here as it has had more time to mature but I am sure pipedot will learn and improve over time.
I'd agree with NC on the html output in the php, I'm a big fan on MVC type architecture.
(Score: 1, Informative) by Anonymous Coward on Tuesday May 06 2014, @08:28PM
Ack. To clarify for others; the code itself is quite clean but in architectural terms, it is not a cleanly engineered code base. Anybody who ever got a maintenance gig on this sort of code knows exactly what is meant. Those who never had to maintain a 3rd party codebase like this -- it should in no way be taken as disrespectful towards or as a criticism of Bryans efforts.
(Score: 4, Insightful) by crutchy on Tuesday May 06 2014, @09:50PM
I've had a look over some of the pipedot source, and it's easy to read and understand. I prefer keep it simple, and hardcoded page generation is simple. IMHO templating is overrated unless you need to add features on a regular basis. Otherwise CSS should be good enough for most layout tweaks. Templating also adds a layer of complexity.
If necessary a basic pipedot template system could be built with html includes and the use of variable delimiters like %% and php's str_replace function, but it's not like the pipedot page generation is hard to figure out and modify without it.
(Score: 1, Insightful) by Anonymous Coward on Tuesday May 06 2014, @10:11PM
Spoken like a true PHP developer
(Score: 0) by Anonymous Coward on Tuesday May 06 2014, @10:39PM
aka I like spaghetti code
(Score: 2) by crutchy on Wednesday May 07 2014, @07:50AM
wow thanks. i never considered myself to be a 'developer'... more just a tinkerer :-D
(Score: 1, Interesting) by Anonymous Coward on Tuesday May 06 2014, @11:08PM
We can have a cross-site discussion [pipedot.org] if you like :P
Nobody is criticising Bryans code, however not separating presentation from business logic is a huge red flag to me as a former freelance contractor. This is what NCommander referred to as a 'mess' and I was agreeing with that sentiment whilst pointing out why somebody would use that term. PHP is a templating language and you only have to see a couple of horror codebases before not doing something as simple as...
... will set cacophonous alarm bells ringing in your head. I don't see how that is overrated? It's moving all the HTML, inline script and CSS to separate files. Nothing complicated about it -- extract an array into the function scope and make the variables available to included files.
Attempting to maintain a codebase where there's javascript stored in SQL being retrieved in the middle of a HTML segment and updating inline CSS... No really -- I still have nightmares after all these years and like I said it's a red flag to me and this is quite probably why NCommander used the term 'mess'. I've no particular reason to defend the guy but am certain that I too have felt the pain.
(Score: 2) by crutchy on Wednesday May 07 2014, @07:56AM
all good points. css is usually stored in separate .css files anyway, so i don't think there is any disagreement there (and i didn't see any inline css in the pipecode files that i looked at).
my guess is that scenario would be closer to slashcode than pipecode
also, not saying that templating is bad... more that lack of templating isn't necessarily bad.
(Score: 1) by RaffArundel on Wednesday May 07 2014, @12:53PM
I haven't seen the code, but I will say not having templating for something like this suggests you aren't separating the layers properly. Ignoring the "smell" argument for a moment, it definitely removes flexibility.
It's like not having unit tests or FIT for code - you may be able to get away with it for a while but the first time you need to do any real work on it, especially when there is a problem you have created a mess for yourself.
Now I am curious - I think I will grab the code and take a look at it.
(Score: 0) by Anonymous Coward on Wednesday May 07 2014, @01:24PM
So for a site like this, once you've settled on a usable and not too crappy UI, the users aren't going to care if you never actually change the look.
(Score: 2) by crutchy on Wednesday May 07 2014, @09:55PM
your argument is based on the false premise that templating is required for flexibility... it's not. if you look at the source, the page structure can be changed, quite easily too. the only difference is that you need only know a bit of php to do it and not some obscure invented templating syntax.
separation of layers is usually good, but it's not the rule, and nor should it be... because such rule itself would remove flexibility. established rules are a tool of the waterfall trade, and is also partly why waterfall projects so often fall on their swords.
do grab the code. "professional programmers" will no doubt balk at it, but from a pragmatic tinkerer's point of view, it's simple, easy to read & understand, and it works.
i was able to navigate my way around pipecode fairly easily the first time i saw it. slashcode otoh, well... you can probably guess.
(Score: 1) by RaffArundel on Thursday May 08 2014, @01:03PM
Nope, my argument is that proper structuring of code makes it easier to add/remove/change. Improper design makes changes harder (hence, removes flexibility) and your options fewer.
Is your argument that "templating" is something you do in "one of those (obscure invented) templating languages"? Do you believe that PHP isn't/can't be a templating language? Is Velocity or Freemarker "obscure" or does it have to have the ubiquity of JS?
Just so we are clear, I am talking about the MVC pattern - specifically the Model->View part, templating is simply mapping the data in the Model to structures in the View. Proper templating treats those a separate components so you can (re)move, add, enhance what the user sees without needing to or minimize messing with code. Ignoring the business driven decisions by Dice, do you think we would be here if the site-which-must-not-be-named had a clean template layer that you could control?
Ah, so design patterns (MVC in this case) is a tool of the Man, and fails the People in the real world of Agile Masters. I won't get side-tracked on why waterfall and agile projects fail, but it isn't because they followed best practices. In fact, many of these "rules" were created to address project failure regardless of methodology - but likely help the faster paced development teams the most.
YMMV.
I grabbed slashcode when I joined this site, and it is sitting on my computer. I meandered through it, mostly because I was interested in seeing what NCommander was talking about in some of those posts. It is a good sign that the pipedot code is easy to understand, but I just did a bender with Wordpress, so I'm not in any particular hurry to look at more PHP - but I definitely plan to. Eventually. When the mood or need strikes me.
(Score: 2) by crutchy on Thursday May 08 2014, @02:10PM
i'm just a tinkerer... rules are meant to be broken, wheels are meant to be reinvented, and methodologies be damned. also, my idea of software design is scrawl on a bunch of sticky notes, so it's probably a good thing i'm not a pro.
(Score: 2) by Reziac on Wednesday May 07 2014, @02:58AM
I'm not a coder, but I read thru the wiki stuff, and appears to me the main advantage of Pipecode is that average folks can probably get it set up and running without going completely crazy. Whereas from all you've told us, getting slashcode properly functional required numerous arcane rites during specific phases of the moon; the usual black chicken tied to your monitor would not suffice, but its scalability seems hard to beat.
Both efforts are to be commended, and I'm glad to have both sites.
And there is no Alkibiades to come back and save us from ourselves.
(Score: 2) by GlennC on Tuesday May 06 2014, @07:59PM
They'll schedule the vote on that after the community decides on the name
(I tried closing my sarcasm tag, but it didn't show up on the preview.)
Sorry folks...the world is bigger and more varied than you want it to be. Deal with it.
(Score: 3, Funny) by maxwell demon on Tuesday May 06 2014, @08:34PM
Well, then you probably just have to continue being sarcastic :-)
The Tao of math: The numbers you can count are not the real numbers.
(Score: 0) by Anonymous Coward on Tuesday May 06 2014, @10:25PM
my sarcasm tag
It has been noted that I often miss the mirth in a situation, so forgive me if that is the case.
OTOH, if you are completely serious, tag types that are not explicitly supported are stripped away by the Comments engine.
If you want < (less than) and > (greater than) to appear with your fictional tags, you must substitute some markup. [google.com]
-- gewg_
(Score: 1) by Magic Oddball on Wednesday May 07 2014, @09:30AM
You could always take the approach of writing /s at the end of sarcasm, [s]around it with brackets[/s], or using parenthesis with italics (like this, as if you couldn't imagine it yourself). Those are the methods I borrowed from others long ago, at least.
(Or just use the simple way of just writing & gt; and & lt; without the spaces.)
(Score: 0) by Anonymous Coward on Wednesday May 07 2014, @03:18PM
You mean, > and <? Then why not simply write that? Hint: &
(Score: 2) by GlennC on Thursday May 08 2014, @02:10PM
Thanks for the tips!
Sorry folks...the world is bigger and more varied than you want it to be. Deal with it.
(Score: 2) by omoc on Wednesday May 07 2014, @06:43PM
too late? How about a merge of efforts? Pipedot has the nicer colors, the modern script and most importantly, the better name :P
(Score: 0) by Anonymous Coward on Tuesday May 06 2014, @07:33PM
Maybe SoylentNews could open up the runoff vote list and get the darned vote going before we all die of old age!
(Score: 0) by Anonymous Coward on Tuesday May 06 2014, @07:33PM
Offtopic but Insightful
(Score: 5, Informative) by NCommander on Tuesday May 06 2014, @07:43PM
The sidebar been updated with more information about this. I need to write something more about the vote in the near future.
Still always moving
(Score: 0) by Anonymous Coward on Tuesday May 06 2014, @07:48PM
Thanks!
(Score: 1) by sjwt on Wednesday May 07 2014, @08:24AM
'Someone somewhere has released update X to something'
FFS, why should I have to look into what it all is, this is the kind of crap posting we left /. because of, if you cant take the time to explain what your story is about, then the Editors should not allow it to be posted.
(Score: 2) by marcello_dl on Wednesday May 07 2014, @09:08AM
We are on a slashdot clone site and we talked about slashcode, then someone mentions pipedot and pipecode... What could it be about? use the force, Luke.
(Score: 1) by Magic Oddball on Wednesday May 07 2014, @09:55AM
Pipedot is the other discussion site founded by people during the Fuck Beta protests. When I looked a month or two ago, they were using Slashcode, but IÂ guess they customized or rewritten it enough for it to deserve an entirely different name.
(Score: 5, Funny) by janrinok on Wednesday May 07 2014, @10:06AM
Apparently this story is not for you - feel free to not read it.
If you have never heard of pipedot, or cannot deduce what pipecode might be, then it is probably best that you go on to the next story.
Alternatively, if you can send me a spoon, I will try to feed all the information to you in very small pieces. Let me try using my own spoon for now. You have never met Bryan, but Bryan is the man who created pipedot. If you go to that site, 'pipedot.org' by clicking the link that has been provided, using the mouse that probably sits on the desktop near your computer, you will see the site quite clearly. Use the same button that got you to this site. When you get there, you will see 'Pipedot'. The ability to go to other sites is what makes the internet so powerful. Now that you are at the site, you will probably understand what I meant when I said that 'Bryan over at pipedot' had done something. Bryan runs (and wrote the code for) the Pipedot site. The code that Bryan (remember him?) wrote is called pipecode. It is a clever idea which links the name of his site to the code that he wrote to run it. That code took a lot of work to produce but Bryan (yes, the same one that I mentioned a few lines back!) has generously given the code away! But, we don't say that he has 'given it away' because he still has it as well. So we use the phrase 'released the source code'. Again, I made it a link so, if you can find your mouse again, click the link and it will take you to the place on the internet where his code can be found. It's like magic!
Let me know when you have finished all these difficult tasks and I will take you through the second sentence. Or you can move on to the next story.
I am not interested in knowing who people are or where they live. My interest starts and stops at our servers.
(Score: 1) by karmawhore on Wednesday May 07 2014, @11:35AM
Funny stuff, though. :)
=kw= lurkin' to please
(Score: 2) by janrinok on Wednesday May 07 2014, @05:51PM
We all have bad days......
And if he couldn't work that story out for himself, then I feel sorry for him.
But you're right, karmawhore, perhaps I should have stopped after the second sentence.
I am not interested in knowing who people are or where they live. My interest starts and stops at our servers.
(Score: 0) by Anonymous Coward on Wednesday May 07 2014, @01:31PM
No. This site and its users are here because of Beta. Slashdot's crappy editing and story summaries have been around for years, it never bothered us enough.
If you can't figure out what pipedot is in seconds from the summary, you are likely to be one of those tech illiterates who have been increasing the noise/crap level at Slashdot.