Is there any crash course for FogBUGZ? - fogbugz

Just signed up for a trial at fogcreek.com/Fogbugz after reading Joel's latest blog post. I think the features are very nice, but there are simply too many of them, and I'm having a hard time learning the platform.
Is there any online quick start guide or an one hour crash course that I can get started from?
I'm aware of a book called Painless Project Management with FogBugz, but how relevant is it to FogBugz 7.0?
Thank you.

I'd suggest looking in the help of FogBugz itself, specifically FogBugz in two minutes and The basics of bug tracking sections. That would give you a quick grounding.
The second edition of the FogBugz book by Mike Gunderloy was written for 6.0, but the core idea of how you use FogBugz on a team to track bugs and schedules is fundamentally the same, so this book is still quite worthwhile.
Fog Creek also runs webinars which you can sign up for on their site (see the WEBINAR tab).

There's a philosophy behind this program, that "there's nothing that you have to enter". That means you can just jump in and start playing. Part of the necessary learning curve is just getting used to the interface. Once you're past that, the help, articles, and books make a lot more sense.

Related

F# - Resources for learning it from scratch

I appreciate there are a few posts out there, asking about F# tutorials/learning resources, but so many of the questions (and answers) assume a somewhat established knowledge or experience in C# or programming generally.
While I HAVE engaged in some programming, it's been very bitty and over many years. What I'm looking for is an F# tutorial, or series of tutorials, that walks you through from the very basics (a "complete" program that prints "Hello World!"), and progresses naturally while still showing you the complete solution. Most resources I've found cut out most things and just say "this is how you'd do it in C#, and this is now F#", leaving out other elements that complete the solution to the problem.
EDIT: I found the free course on F Sharp TV (udemy course), but didn't like how it was always exploiting F# Interactive to demo the language, as opposed to building an actually complete application.
I am very new to F#. I just started picking it up this month and I have really enjoyed it so far!
I can really relate to your question because every book or tutorial I've found assumed a lot more knowledge than I had. I would open them up start reading and then 3...2...1...and I was completely lost.
I'm sure once I am better at the language the references that are usually listed will be obviously superior to what I'm about to recommend.
One book I've enjoyed is "Functional Programming Using F#". It starts from the very, very basics and provides information about the small things in F# that I otherwise would have missed. The best part are the exercises at the end of the chapters, because someone went through all of them and posted answers here: [1]. So you can struggle through the exercises and then get an idea of how someone else approached the problem! The main drawback of this book is that the examples can be math heavy at times.
The second book I've used is called "Friendly F#". I really have never seen it linked or talked about, but I have thoroughly enjoyed it. I have found the approach the author takes to be rather novel. Instead of showing me how to implement the Fibonacci sequence in F# for the bajillionth time the author starts with projects! Real projects where you can actually visualize things! For example, in the first chapter you create an F# script where you visualize a ball bouncing in a box acted on by gravity! I know real coders are probably more worried about the esoteric features of the language but as someone starting out it was super motivating to actually be able to visualize something and more importantly to have something to show to my wife so she won't think I'm just wasting hours doing nothing. 😁
The last thing I'll recommend is Excercism. It's a great website where the tutors give great feedback. The only drawback is that you need to have somewhat of an idea of what the language can do. For me, I wasted countless hours trying to solve one of the problems only to realize that there is something called Seq.zip which would have solved the problem instantly. So, I recommend sitting down with a problem thinking hard on it for an hour and then googling "fsharp excercism solutions insert problem name here". Luckily, you can navigate directly to the solutions page and go through hundreds of solutions that other folks came up with. That's how I learned forever what Seq.zip is.
EDIT:
I also wanted to add this video [2]. It's not going to teach you all you need to know about F# in one video. However, it will give you a great overview of the language so while you are learning it in more depth you have an idea of what the language is capable of.
I hope this helps!!
[1] - https://github.com/TorbenRahbekKoch/Functional-Programming-Using-FSharp
[2] - https://www.youtube.com/watch?v=c7eNDJN758U
As mentioned in the comments, some might think this answer can be seen as opinion motivated. I feel that those resources could be a good entry point to learning more about the language.
Reference: sachabarbs.wordpress.com/1406-2
Reference en.wikibooks.org/wiki/F_Sharp_Programming
Bonus: Getting started with F# in the cloud with Azure, take a peek at this awesome reference!
Reference: Getting started with F# with Azure Notebooks
I would recommend first fsharpforfunandprofit.com - clearly a big starting point. You have the complete. This is a great section to "thibk functionally". https://fsharpforfunandprofit.com/series/thinking-functionally.html
When you get used to the language (a little bit), I would recommend "Stylish F#" . It is a very recent well written book on good practices for beginners (but who can write a bit of F#). Really liked it.

Places to find a group for online summer project

The summer is coming up and I will be having a lot of time on my hands. I thought spending the time collaborating on a project online with several other passionated programmers somewhere in the world would be a great idea. I've never tried online collaboration before although I am used to working in larger teams and using source control, so it would mainly be the lack of direct communication that would be new to me. I would be interested in starting a project with programmers around my own level or (preferably) better and finishing the project over the summer/fall.
One problem, however. Where would I go about finding people for such a project? I'm not interested in joining an on-going project but rather be part of a new one. Certainly there must exist sites online where this is possible? The project properly wouldn't huge in any way. I'm thinking a little cozy project such as a arcade 2d game, a subtitle site, a world cup stats tracker or similiar.
Also, what would be a better approach. Finding the people for the project and then come up with an idea for the project or putting an idea out there and see if anyone was interested?
PS: If anyone on this site find the idea interesting feel free to post here or PM me and we'll have a talk about it.
The Google Summer of Code is really perfect for that (and there usually are very interesting projects to work on):
Google Summer of Code (GSoC) is a
global program that offers student
developers stipends to write code for
various open source software projects.
We have worked with several open
source, free software, and
technology-related groups to identify
and fund several projects over a three
month period. Since its inception in
2005, the program has brought together
over 3,500 students and more than more
than 4,000 mentors & co-mentors from
nearly 100 countries worldwide, all
for the love of code. Through Google
Summer of Code, accepted student
applicants are paired with a mentor or
mentors from the participating
projects, thus gaining exposure to
real-world software development
scenarios and the opportunity for
employment in areas related to their
academic pursuits. In turn, the
participating projects are able to
more easily identify and bring in new
developers. Best of all, more source
code is created and released for the
use and benefit of all.
Go check fast if you can still enroll.
To expand on Symen Timmermans answer, non-profit agencencies traditionally do not have the budget to fund many of their IT needs and would probably really appreciate some volunteer IT assistance. I would think you could easily muster up a summer project by approaching some agencies. Be clear that you are offering your services for free.
Besides gaining some exposure to some real-world problems, this may be an opportunity to network within your area. And it also looks pretty good on a resume.
This, perhaps, will lead you in the direction of a project. From there you could try contacting people you know or perhaps ask around at a local user group to see if anyone is interested in collaborating with you.
The OpenHatch.org website exists to help connect people with tasks that need to be completed on various Open Source projects, and to connect them with mentors in the target languages/technologies.
On the Volunteer Opportunities page, you can search through hundreds of open tickets in over 250 projects. On the People page, you can search for others who are willing to mentor you in the target subject with a search like can_mentor:"Python", or search for others near you, and more. The more people that join on the web site, the more visibility that it gets for more projects and people to come and participate, so why not join in the fun?
Why a programming project?
Your tag 'nonprogramming' sparked some ideas. Why don't you research possibilities in your neighbourhood for things like community projects? There might be plenty of organizations looking for you as a volunteer.
Though those projects might not seem as challenging as an innovative programming project can be, they can be really rewarding, especially if you directly witness the benefit your collective effort provides to others. Also you might learn a new skill, meet interesting people, and learn new things about yourself.
Think about it.
First you'd have to think about what kind of project you wanna do.
Game, etc..
Then I would look for a Forum / Community and start looking there for mini-projects.
I however have no particular site to offer you currently.
Also I believe the communities will depend on the languages etc... you are comfortable programming in.
Cheers,
Build It With Me is a website made for connecting developer and designers with ideas.
To find people to work with you on a new project, you have :
to go where they are
to convince them to work with you
Programming folks can be met directly on IRC. Go to a channel corresponding to the computing language you like, and you'll met great people, knowing your language and wasting their time on IRC. You have then to convince them to stop wasting time saying nothing on IRC and to go with you on a new project.
Summer is already well started, so you should choose a small project that can be useful to anybody. People will work with you if the project you propose them is interesting enough for them. Here is an idea of a useful tool that does not exist yet :
http://ha.ckers.org/blog/20100613/web-server-log-forensics-app-wanted/
You could try going to SourceForge and finding a new project or creating your own. They have a large community there so you shouldn't have any trouble finding people to work with.

Noob Rails ? about learning Rails

I have been programming for a while and for the past 3 or 4 months have been learning ruby. I am not an expert by any means but I believe I have the basics down.
I decided to start learning RoR and bought the "Agile Web Development with Rails 3rd Edition" and have been dutifully going through the chapters one by one. Currently I am in chapter 8 and have had no problems so far.
My question is I know I have learned several things so far and I know that I am starting to get a sense of the Rails framework I have this fear that I am just not learning as much as I should. Some things I get and understand the interconnections while I feel on other things I am just going through the motions and don't fully comprehend the total interconnectivity. Now, there is still a large amount of the book for me to complete. I guess I am just wondering if I complete this book what should I expect to be able to accomplish on my own and what should be my next steps.
Thanks
if you complete that book, and fully comprehend everything, you'll have a ton of the rails framework behind you. the only way to master it, is by doing it. write apps, even if they're nonsensical. i wrong a full website alongside the depot app when i went through the first sections of that book. then i tried to find a way to tie-in every part of ActiveSupport covered, then ActiveRecord, etc.
After reading the same book, I was able to build a web application. The building of that web application helped me make all of the connections and learn all of the things that weren't covered in the book. There's absolutely no substitute for putting what you are learning into practice. It's the difference between learning German from a book and waking up in Munich with hangover and no money and making your way home.
Build something.
In addition to the (good) answers already given, I'd suggest sitting down and reading through at least strategic sections of the Rails codebase. The effort of trying to figure out the overall structure of Rails as a piece of software will cement a lot of the connections in your head. On top of that you're likely to learn some new things about Ruby. Might also be well worth your time to read through some good open source apps done in Rails to see how people approach various problems.
Also go through the excellent Ruby on Rails RailsCasts by Ryan Bates.
As I always say to people who's learning something new or improving their knowledgements: "No pain, no gain".
Get through the Agile Web Development book (I'd recommend you the 4th edition though as it deals with Rails 3). Also, take a look at this tutorial: http://guides.rubyonrails.org/getting_started.html, watch some http://railscasts.com/ for best practices, play around with the rails console (rails c in the project directory) and just make your own application!
Think about something cool you'd like to achieve, even if you still have no idea how it should be done. You will get some decent basic knowledges in no time! Personally, I started programming on Rails 3 weeks ago and today I already have done a complete manager with ldap user authentication, ssh connections, XML parsing and YAML writing, stuff I wouldn't imagine I'd be able to do in so little time...
I would like to share with you this blogpost there is a lot of information about to learn Ruby and Ruby on Rails you will love it http://blog.crowdint.com/2013/12/06/the-path-of-the-padawan.html#!

Which framework should a beginner pick for a twitter mashup?

I have this idea about a twitter mashup and I've been doing some research over the last couple of days regarding which framework to build it with. SproutCore looks really nice (especially as it has a UI designer too), then someone suggested Capuccino (I am not to keen to go with Objective-J, don't know why though). What do you think, stackoverflow-ians? (Note that it's going to be my first mashup attempt)
Really, it's too early to decide. They are both built on a strong foundation and have some great tools, but neither is complete or at that well documented. I've been tooling around with both on some small personal projects for a few months and there are parts of both that are great and parts of both that aren't. Its really up to personal taste and which community you think you'll want to be most active in.
The good part though, is that it shouldn't take you too long to get up to speed in either of them. I suggest you run through the tutorials on each page and just pick one and go with it. If it ends up not working out after a day or two, just switch. Even if you dont already know objective-c cappuccino's learning curve isn't that steep.
tutorials:
sprout core: http://wiki.sproutcore.com/Todos%C2%A0Intro
cappuccino: http://cappuccino.org/learn/tutorials/

How's the latest Ruby on Rails code?

So I've been programming in PHP for the past 7 yrs. What I should be doing is learning OOP but all the talks about RoR and Django interest me even more. With that said, I started to follow RoR when it first came out. I knew of it through 37signals when I was first introduced to their products. At the time, I continued to use PHP, it was what I knew and I was able to produce code much faster than trying to learn a new language.
Fast forward to 2009 ... it was a few yrs ago when Twitter made headlines, when they implemented Scala due to RoR's inconsistency. My question, have things gotten better for RoR? I know I shouldn't go by one company's issue but of course the fanboys will probably jump all over this and bash or pump one language over another.
I would assume by now lots of bug fixes and enhancements have been made, but I would still like to hear what annoyances there are with RoR that still needs to be addressed.
TIA!
Twitter's problems were not with Ruby or with Rails, and they have explained this at length.
This is becoming one of those various urban legends that everyone "knows" to be true, but isn't. It's quite hard to google for the story here, probably because of all the "follow me on twitter" buttons. Fortunately, a Stack Overflow answer referenced a detailed discussion on this that included Twitter developers.
I will give one other urban legend example that is (via RSI) somewhat programming-related: the Dvorak keyboard. Everyone knows that QWERTY is designed to be inefficient, to slow down the operator, and that it is an example of market failure, right?
Another urban legend: Dvorak vs QWERTY
Turns out this legend is not just completely false, but it has been deliberately, deceitfully falsified. Yes, the US Navy did test the patented Dvorak keyboard in 1944. But according to this report on the Dvorak keyboard:
How can we take seriously a study
which so blatantly seems to be
stacking the deck in favor of Dvorak?
And, indeed, there appears to have
been good reason for that deck
stacking.
We discovered that the Navy's top
expert in the analysis of time and
motion studies during World War II was
none other than...drum roll
please...Lieut. Com. August Dvorak.
Earle Strong, a professor at
Pennsylvania State University and a
one-time chairman of the Office
Machine Section of the American
Standards Association, reports that
the 1944 Navy experiment was conducted
by Dvorak himself.
Later tests by other organizations showed no advantage for Dvorak. It is also worth noting that slowing down typists was not a goal even in the early days of the typewriter. Actually, typing speed contests were conducted regularly with great publicity and the fact that typists were fast on QWERTY was a factor in the adoption of QWERTY.
Dvorak and Twitter and RoR
The false version of this story has been repeated for literally 65 years now, partly because almost no one cares about original sources, they just repeat the version they heard. Another parallel with RoR and Twitter is the religious/political angle. People have language and framework loyalties, and they have economic system loyalties, and the enduring legends play into existing bias. The Twitter story connects with some people's emotional perspective on the expertise they do and do not yet have; the QWERTY story connects with some people's personal dislike of free market economics.
Twitter switched some parts of their architecture from Ruby to Scala because when they started they used the wrong tool for the job. They were using Ruby on Rails—which is highly optimised for building green field CRUD Web applications—to try to build a messaging system. AFAIK, they're still using Rails for the CRUD parts of Twitter e.g. creating a new user account, but have moved the messaging components to more suitable technologies.
Your best bet is going to be working through a little prototype app. Rails is pretty nice once you get the hang of it. Though that is a similar truth to many frameworks.
Take a little piece of your app that's either easy or hard in php, and try to write it in rails. It shouldn't take too long and should give you a good real world example.
Personally these prototypes are my favorite. Systems with no users are the easiest to write.
Well, it's not only twitter that is based on Ruby on Rails. There is a long list with successful new projects - http://storecrowd.com/blog/top-50-ruby-on-rails-websites/ .
May be the only annoyance referenced by lots of users is the performance. However Ruby 1.9 addresses that problem and is compatible with most of the libraries already. Furthermore performance problems are function of Developers' programming knowledge in most cases and rarely a function of programming language speed.
My advice is just to give it a try for a week or two :)
Are you planning on having a site as heavily trafficked as Twitter?
If not, why are you worrying about issues that only came up under massive load?

Resources