Sorry to hearit. The workspaces inspired me to move my project to Open Source, and I liked the way it worked. I was really looking forward to creating a CodeProject article that was tied to actual code. Que sera sera. Thanks for the fun run while it lasted!
Chris, I thank you for your prompt and quick refund of the Workspaces registration fee. I found out about Workspaces' demise (and found this article) when PayPal emailed me about the refund. That's rare. While I'm sad to see Workspaces go, I appreciate the integrity in how you handled its "retirement."
I was a bit perplexed when I got a refund on PayPal today. Workspaces had a lot of merit and I got it. I was planning to move In with my next article I'm slowly working on. The news comes as a mixed bag to me now, and I'd like to expand.
I've been a long time fan of CodeProject. I can't begin to count the number of times I've needed a "Hint", or a quick "How to" over the years and found the answer here. While the service is free, I really wouldn't mind paying something. I saw having a "Professional Workspaces account" as just that for the few months while you were in BETA.
While I'm no marketing expert, as a consumer, Code Project does need something to quench my inner guilt for getting so much for nothing, and I'm sure others do too.
I think a good model of what I'm talking about is reddit. As you may know, having a "Gold" account really doesn't do much but put a badge on your profile, give you access to one single private reddit, allow you to turn off the side bar ads, and allows you to get more posts comments per page load. That's about it. The funny thing is I don't turn off the ads because I like the messages you get when you don't.
Long story short - Not much different than the free, and they've monetized my membership for about $50 dollars a year. I also can purchase "Gold" to give away to other members. While these things don't do much, they do help build a sense of community and offer a way of saying "thanks" with a small monetized gift token to someone whose helped you out.
So here's my advice - take your Alien (I believe you all were first with the alien, right?) and paint him yellow or "gif" him up so his arms wave and he's jumping for joy - Anything - And tell me I can have him on my profile for 2 to 5 dollars a month, 20 - 30 dollars a year (29.95???) And I'll buy him for the bragging rights.
Just my thoughts.
EDIT: got punchy on the submit button fixed my last two paragraphs - sorry.
"If you've got to make code changes in something you didn't write, tread lightly. Your predecessor was regarded as either a genius or a moron. The truth most likely lies somewhere in the middle..."
I truly appreciate code project, it has been at my aid too many times to count. Workspaces had some distance to get to be a 'github', but I really liked the way workspaces was moving and that I was going to be able to get a group together working on projects in private spaces and then publish articles and making repositories publicly available. (Finally I'd like to have setup publishing to codeplex) Anyway, I understand that sometimes initiatives don't end up being core competencies of their organization and look forward to seeing where your efforts go.
We have no active subscriptions in our Paypal account (all cancelled). You can confirm this on your end by looking in your Paypal account to see if you have any recurring subscriptions set up. Look on the "My Pre-approved Payments" page on your paypal profile.
Codeproject is great for writing and publishing article, github/git is great for hosting code.
Do you ever evaluated some sort of integration?
For example instead of manually uploading a zip file you can provide a way to pull it from a git repo. In this way updating the source code can be really fast and easy.
A similar solution can be provided for article text (a markdown file inside the repository?).
I say this because I hate to always keep up to date my articles on codeproject (cleaning the project, zip it, uploading it, modify the link, ...). Usually I simply put a header that point to the official github repository and I never update it on codeproject.
One of the big issues with having 10M members is names. Everyone has a name, and most want to use their name, or at least something vaguely resembling it. The issue is that Real Names are messy, human things meant for messy human things, and are terrible as a way to label things in a way that makes it easy (for a programmer) to reference that name within text or in a URI. We can't have //www.codeproject.com/members/Chris Maunder because the HTTP spec doesn't allow spaces in URIs, nor can we confidently say Chris Maunder refers to me in text, because it could also refer to someone names Chris who is rambling incoherently[^].
So we have Display names as a way to label your content such as posts and articles, and we have usernames as a way to provide a human readable and programmer parsable handle to your account. //www.codeproject.com/members/chris-maunder as a link to you and @chris-maunder as a reference to you in messages.
You don't need to use @username and you can be safely ignore the feature if it bugs you. However, if you like the convenience then a member's username can be found on their profile page or in the popup that appears when you hover over their name in the forums (assuming you have "Profile Popups" enabled in the forums).
We've finished reworking our caching of forums and articles and are happy to see load times for forums go from half-second to 6 milliseconds. That's beyond what we thought we'd get. Start diving deep into messages from the days of yore and load times don't appreciably change. We've essentially opened up the entire corpus of Forum postings for instant retrieval and slain a number of bugs, thrown out pages of code in the process and reduced our database load by a factor of three. It's almost idling now.
On the article side of things we've improved performance even more and have one final push, after which time we'll hunt down and nuke any remaining load issues.
For a decade we've been working against a local cache on each of the webservers. This meant that we either had to keep the time-to-live short, or we had to work out a sensible way of ensuring that when a member changes an article on one server, and is then directed to another server, they see their updated information - even though the local caches didn't talk to one another.
Yes: distributed caching is a solved problem but there weren't many canned solutions when we started, and we did end up doing some clever things to ensure it all looked sensible, give or take some "expected" caching issues such as a deleted article still occasionally being around for 10 or so minutes. "Expected" really comes does to what is forgiveable, and in this day and age even stuff like that stretches the friendship so we've finally had a chance to bite the bullet, plug up the local cache and add a couple of Redis [^] servers. We're using the ServiceStack Redis client[^] and implemented - fairly easily - a distributed cache that not just solves our cache-sync issues but speeds up application spool up time since the cache is off-server and independent of the webservers themselves. No need to recache on startup - the data's already there.
We are, obviously, seeing our cache load times go up since it's no longer a local cache but requires a network round trip plus serialisation, the overall database load is nicely down and our code is far cleaner.
Redis. Love ya work.
The Code Project | Co-founder
Microsoft C++ MVP
Last Visit: 31-Dec-99 19:00 Last Update: 30-May-15 3:57