Note: I tagged this under R because I am an R user, but the topic of this question is general, so I appreciate any input regardless of programing language.
Hello Everyone,
My company is expanding into a data-science/developer field and will be developing codes/scripts in the near future. I want to develop a standard practice for when it comes to sharing and archiving developed codes internally. The main point being would be if we develop a code today, what can we do to that code and around that code so that it can be readily understandable 5 years from now. Essentially, what are the best practices when it comes to code sharing and archiving it?
I did some research for this, so I understand the preference for DRY (Don't repeat yourself) to WET (We enjoy typing), having a top level README, readable and easily to understand comments, as well as having screenshots or examples of the finished product. What are your thoughts on these practices, how could they be improved?
Ok this question is not exactly technical but very pertinent and current.
If you may have not heard Eureqa (http://creativemachines.cornell.edu/eureqa) is a machine learning (?) based tool that helps you find hidden equations and mathematical relationships within the data. It does sound futuristic and experimental and to a great degree it seems it is.
This is the relevant talk by Eureqa inventor Hod Lipson
http://www.youtube.com/watch?v=Xja6sLl6dVg entitled Mining experimental data.
So i believe this can become popular amongst many R users .
On the official site one can obtain Eureqa clients for MATLAB, Mathematica, Python etc but none so far for R.
So this question is just what it is , is anyone of you working on creating one...or if you know this project do you know what it will take to make one ?
I asked the same question on the Eureqa group a few months ago. Here's the link:
http://groups.google.com/group/eureqa-group/browse_thread/thread/cb251327b50dbd4f
The last entry has the following links:
http://r.eureqa.ivi.eu.com/
http://groups.google.com/group/eureqa-r
I haven't tried this, so I don't know if it works. If you try it, please post your results.
I'm wondering building a website like StackOverFlow (approximately the same features using ASP.NET ) How much Work-power and time does it take in your opinion .
My boss has asked me to estimate for work-power , time , cost and suitable technologies .
I appreciate any direction .
I believe that the site would take plenty of time to implement. If I'd have to pull a guess of thin air I'd say somewhere between 800-1200 man hours.
Then comes the setting up servers, ensuring scalability, testing, fine-tuning algorithms.
So depending on how good you or your team is it could take anywhere up to a year to write something like this.
Disclaimer: I am just talking based on 10 years of experience with web-development. But I could be COMPLETELY wrong.
Buddy, there is a website similar to this called http://startups.com
You can probably ask this question there. Its specifically designed to answer questions like this. Whereas stackoverflow is intended for programmers and programming related questions. I see this question being asked here a bit isolated.
People come to this site and think wow stackoverflow this is an easy site to create.
I mean all it is is post a question then people submit an answer. I think that is a big misconception. Maybe just maybe the database is quite simple, a question has multiple answers and an answer has multiple comments associate with it. If you dig deep into it the questions and answers could actually be stored in the same table...with some indicator as to whether it is a question or an answer. But to answer your question, I don't think it is as simple as one might think. It's definitely not difficult in the logical sense (it's doable). What I am saying is it is more then a one week job :).
it is not that hard to do the site. the design is nice but simple. the engine isint THAT complicated (or so it looks). biggest problem is the load that falls on this site and the hard task of moderating/maintaining it. and the best part of it is the idea ;)
I think that the diffuclt of stackoverflow is to get community (very good quality community, not like yahoo answers).
Not only that, also use cases from stack overflow are pretty cool and adapt very well to get a good community.
About work-power a good skilled programmer could start it, if at full time like a month or less could do it. BUT! the programmer should have the idea,not a freelance or something like that, freelance or slave monkey coder could take a more time to do it.
But there are more problems, like money to invest at very begin of the app for example in hosting / server power costs.
Also stack overflow, could be compared to forums...its like a forum evoled or something similar.
Someone said that requires a lot of work power, I disagree if you start something to get the best scability,etcs (like project of big scale) you are going to death of that project.
Start something simple, very simple when there are scability problems start with that but no at begin!
Probably longer than you expect:
Code: It's Trivial (by Jeff Atwood)
Let's say I've come up with what I think is a clean and elegant solution to a common generic requirement in coding projects. I'm happy to share my code but my main motivation for publishing it would be to get feedback from a quality audience about my solution and to determine if it has been done better elsewhere, if it could be done better, if it is buggy, etc. The normal sorts of reasons a programmer would want feedback for.
The Code Project - ugly forum/comment interface and a serious pain when you want to update the article after it has been categorised. Can also be horribly slow at times.
CodePlex - not really a general code community; people would have to know what they're looking for in advance to find my code.
It would be fantastic if something like a simplified version of The Code Project were produced by the Stack Overflow team with a view to allow users to show off pieces of code and get feedback, thus leading to general skills improvement of everyone participating. A bit like Scott Hanselman's Weekly Source Code blog posts, but with more of a communal purpose. In the mean time, however, what do you suggest?
It would be fantastic if something like a simplified version of The Code Project were produced by the Stack Overflow team with a view to allow users to show off pieces of code and get feedback, thus leading to general skills improvement of everyone participating.
There's now a sister Q&A website exactly for this purpose — Code Review.
You could post your solutions here, as an answer to a question describing the problem that it proposes to solve.
You're likely to get at least a little feedback, and see other edits/version of a similar solution.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
What software do you use to manage Scrum software development ?
We've tried Tackle and VersionOne (both free) so far and they are good except for the fact that it's difficult to track work in progress. For example, if I have a task that I estimate will take me 8 hours to complete, I've done 4 hours of work with 4 hours remaining, the task is always reported as 8 hours remaining until it is marked complete, at which time it falls to zero.
I'd like to use a tool that will allow me to take an accurate work at the teams WIP at the end of each week and see how much impact that work has had towards a deadline along with completed tasks.
Thanks for your input!
I recommend a white board and excel spreadsheets. The whiteboard has story cards (index cards) , where the work in progress is tracked. The story card starts out with say 8 hours, and as the work progresses decrement the number on the card. At the end of the day, put the numbers in the cards to a spreadsheet.
The whiteboard is visible all the time, and gives the whole team visibility on how the work is progressing.
This question was asked recently:.
Everything from Excel to VersionOne to Scrumworks to BaseCamp was mentioned.
Personally, though, we use a heavily customized Excel sheet, whiteboards, index cards in a variety of colors and a large corkboard.
You also might want to check out Mingle. It's a tool developed by ThoughtWorks, a company that only does Agile.
We've looked at most of the tools out there and ended up with Scrumwise. We've been using it for a while now, and it's incredibly easy to use, and does what we need. It uses the remaining time on each task to compute the burndown etc.
I note that no one has pointed out the misunderstanding of WIP (work in progress).
In agile, “it is not done until it is done”.
While most people see work done as a good thing, it is not. WIP represents investment that can not yet be realised. This is an important part of Agile, but made more explicit in Lean/Kanban.
If you track work done you will encourage developers to work on several things at once, getting everything to “80%” complete. At the end of the project you will spend 4 times more (80% of your time) in “bug fixing”, doing the last 20%. You will look like you are ahead of schedule, but you will over-run.
Also after one sprint, if work packages are small (they will be if you are doing scrum), then the error from not adding part done work to work done is insignificant.
Therefore: Track WIP separately from work done and try to keep it low.
Compromise
As a compromise, you can track part completed with the following rules:
Only track one task per developer. (probably the biggest)
Add a cap, maybe 1/2 sprint.
Discount the rate, maybe 50%, if it is 80% done then report 40%. (tweak the discount rate when you have evidence but don't let it be as high as 100%)
OnTime recently added support for Scrum management (disclaimer: I work for them and helped build the product). :) We also put together an intro video for Scrum if you need more information: Video.
I've been working on an open source web based tool that you can install on site or use our hosted version. We've got sub-task tracking and a real time planning poker feature.
http://www.scrumdo.com/
I was looking up SCRUM software and found this old topic - just my two cents ....
I worked on a project in a healthcare domain for about a year and we used Version One. I am sorry to say, it was perhaps the most despised tool in the project. The testers especially, loathed it. Neither did we developers like it as it was pretty clunky/slow and generally pretty lethargic. We always had excellent customer Support from V1 but the tool just didn't cut it for us.
I am now working in a different project and we are using www.scrumwise.com - and so far so good....
VersionOne does let you change the estimates as you go - the burndown report wouldn't work otherwise. You may be hiding the estimate column or have it set to read-only - click the spanner on the right to list available columns and make sure that the estimate/ToDo column is editable.
We've found it to be rather good, though their odd insistence on customised controls breaks in Chrome.
I would suggest checking out OnTime's Planning board because using excel and an actual white board takes away from actual development time when you can automate the process with software..
I answered a similar question at https://stackoverflow.com/a/16667842/1810290 and I thought of sharing it here as well.
If you are looking for an online scrum tool, then you could have a look at Flying Donut. It is a new online product, and I've used it in my projects with great deal of success. There is a nice way of organizing your backlog, and its GUI is clean with quick response times. It provides different iteration views for planning, execution, and review.
Disclaimer: I have been using it for many months, since I helped building it.
ScrumWorks is nice for small teams. And free, too, for the basic version. We have about 30 developers with multiple projects/iterations/etc. Some basic burn-down charts, good for "yesterday's weather", etc.
Check it out at:
http://danube.com/scrumworks/basic
I think RallyDev might be worth checking out for you. Unless I'm mistaken the way that it tracks time will not cause the issue that you mentioned above.
We have been using it on our project for several months and have grown with it to where the team enjoys using the project.
We use Scrum for Team System which is excellent, but you do need to be using Visual Studio Team System to get it!
I've used this Index card generator, but I see now that there is a newer version link that only uses Excel
I also like their Planning Poker when trying to get estimates.
Just saw this, maybe in a another stackO q/a, https://scrumy.com/demo
Check out Scrum Pig at http://www.bellacode.com. It is a great Windows tool for teams collaborating together when using Scrum.
We use RallyDev for scrum management system. And I found it very much handy.
No-one has mentioned JIRA, is that a cost/OpenSource thing?
I've used JIRA for the last 3 years and have found it to be an excellent tool.
We also use a physical board with a google spreadsheet that serves as an online replica. It works really well and doesn't really add any overhead if everyone gets in the habit of maintaining both. I've blogged about it and included a sample spreadsheet:
http://www.littlebluemonkey.com/blog/online-scrum-tools-part-1-the-scrum-board/
We have used XPlanner. It's simple, but does it's job pretty well. Especially Developers get a nice overview for their current status.