Closed FSSF closed 3 years ago
Request: Have a single http://fsharp.org/use that detects platform - via @dsyme
Request: The fsharp.org website should show some code - via @julienXX
Idea: Taking an opinionated approach to getting started with F# via @cartermp
I want to be able to execute F# code on fsharp.org
and see the result.
Something similar to http://www.tryfsharp.org would be awesome or at least integration with Fable REPL and couple interactive F# tutorials of beginners.
Here's what I think are the most important things for the front page, from the perspective of getting new people interested, in stack-rank order:
Unfortunately, I'm absolutely awful at design, so I can't offer up any reasonable opinions about how it should look. I tend to prefer as little clutter as possible, but that's just my personal taste.
I'm going to be iconoclastic.
The F# org site should first and foremost be useful for experienced F# people. The site should emphasize targeting long-term users first. I don't mean to denigrate outreach, there is still room for that on the site. I think useful for the established community and outreach work together.
I don't have specific recommendations right now (and I will be offline for about 10 days).
@jackfoxy I am not sure I understand your reasoning. In my view, F# veterans know where to find resources already, and do not need fsharp.org to find help or information. By contrast, newcomers encounter simple issues, and fsharp.org is likely going to be one of the first websites they will encounter, so to me it seems important to make that a single place where they can find all the commonly asked information, and will make their first hours into F# easy and pleasant, like, "how do I install F# so that I can try it out now", or "what are good learning resources". It seems to me that outreach to newcomers is a priority, if we want adoption to grow. What information for experienced F#ers would you like to see on fsharp.org? Or, perhaps more pointedly, as an experienced F#er yourself, why would you go to the site?
That is the point. I don't go to the site. And I'm not saying we should not have all the amenities for newbies.
As a "veteran" I still have to save off, or search for links of interest to me. I may not have time to keep up on the current Microsoft F# roadmap for 6 months at a time. Then if I suddenly take an interest my search comes up with all the past roadmaps, which could be scattered all over the place.
Does everybody even know about the RFCs? Didn't there used to be an "engineering committee" loosely associated with the foundation?
OK, I don't have great suggestions, I just would like a reason to visit the site myself.
In my opinion, on main page fsharp.org
should be step-by-step tutorial for instantly start work with fshap:
I know, may be it's easy and intuitive if did it in visual studio, but for manual settings need simple instruction.
Look at the good examples: .NET and C# - Get Started in 10 Minutes CREATE AN F# PROJECT IN VSCODE
Also, on main page should be written current version of F# compiler. It's not very important, but would be nice.
Before everything, it should be made in F# and a banner to be available for the github repo.
@cartermp I like the idea to have it translated in many languages, but from my perspective is the least important feature - will generate the most noise that will hinder development of more important features.
My 2 cents:
1.1. Videos page: a page with 4 sections (list of links - thumbnails) : beginners, advanced, related(fable and other close related to F#) and meta (good video resources for FP, machine learning, etc.) 1.2. Experiment page - a try f# that works in all browsers (this is paramount) 1.3. Setup page - with sections for Win, IOS, Linux (with clear reproducible instructions, ideal setup with a list of plugins that can enhance the experience) and a container solution Vagrant or VirtualBox Linux image with everything setup 1.4. Tutorials page: page splitted in 2 sections:
1.5. Links to documentation
4.1.1. request features (F# lang, tooling) with voting 4.1.2. easy tickets to grab (minimal context knowledge required) 4.1.3. important tickets to grab
4.2.1. Future events 4.2.2. F# jobs adds from firms 4.2.3. Developers availability/requests for F# jobs. 4.2.4. A map with trainer/consultancy services (with an overall client experience voting system) 4.2.5. A pretext to see some charts made in F# (link to the 1.2. resource) that shows F# in the ecosystem (remuneration level, stackoverflow interest, etc.)
solved
, work around
, to be fixed
, etc.I know I forgot something, but it eludes me in this moment, will come back later and edit.
To piggyback on @MecuSorin comments: besides developers, I think we need to have a strong story for managers. A recurring question is "Who uses F#? Do people use it in production?", and the testimonials page is IMO very important in that regards.
That page is becoming a bit too large to navigate. Perhaps what would help would be:
finance
, games
...I think the scenarios are still very similar to those we had in mind when starting fsharp.org, but here is my updated list of what I think the page should cover (not necessarily sorted by importance).
Technical decision makers (CTO level people) - they come to the site when someone in their company wants to use F# or when they hear about it somewhere. Here is what we need to have:
Developers, analysts, etc. who are not F# users - they come to the site after someone on the internet mentions they should look into F#. They need some more motivation to give it a try and solid getting started materials:
F# community members - they come to fsharp.org for information about the foundation, user groups. I don't think they expect up-to-date news or tutorials on everything (there are better sources), but they need things like:
Re “using tags to filter, for instance finance, games...”
I think this is one really important for decision makers – who aren’t looking for “social proof” but “business proof in my domain”
There are tags on all the existing testimonials which could be leveraged
Best
Don
From: Mathias Brandewinder [mailto:notifications@github.com] Sent: 31 August 2017 23:40 To: fsharp/fsfoundation fsfoundation@noreply.github.com Cc: Don Syme donsyme@fastmail.fm; Mention mention@noreply.github.com Subject: Re: [fsharp/fsfoundation] Feedback wanted: fsharp.org redesign (#680)
To piggyback on @MecuSorin https://github.com/mecusorin comments: besides developers, I think we need to have a strong story for managers. A recurring question is "Who uses F#? Do people use it in production?", and the testimonials page http://fsharp.org/testimonials/ is IMO very important in that regards.
That page is becoming a bit too large to navigate. Perhaps what would help would be:
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/fsharp/fsfoundation/issues/680#issuecomment-326439231 , or mute the thread https://github.com/notifications/unsubscribe-auth/AG3vPQ8GJcMUgoxZHUJ8JeE2jGygLuryks5sdzYtgaJpZM4PAqZy . https://github.com/notifications/beacon/AG3vPTtJra_fAyiUyWuxpk6v0ZHQK8L5ks5sdzYtgaJpZM4PAqZy.gif
My idea was to have teasers(with clear messages about the linked content) that will take the user to the respective pages.
I was targeting the decision factors with
I must elabore the thought process behind 4.1.: the tickets I mentioned, are for compiler, tooling, important OSS libraries, even the site - why not? Would be even nicer to have a gamification behind those.
As it stands right now, the current learning resources page is messy, and will degrade over time, as more and more links/resources are added. The question "what are good learning resources?" for F# comes up often, so we should figure out a viable long-term solution.
At the very least, there should be a table of contents to navigate quickly to each type of resource, and find what you are looking for. If you don't pay attention, it's easy to miss that there is a big list of books half way down.
On one hand, it is not the role of the FSSF to decide what resources are good or bad, and (appear to) promote any of them; on the other hand, the raw lists are not very helpful in deciding what resource might be more or less appropriate for different audiences. Also, these lists will tend to grow over time, and some items will age and lose relevance - having a mechanism that will gracefully handle that would be helpful in keeping the site well maintained / curated.
As an example, the current order for the books random, as far as I can tell. I don't know what the right way to do this would be - here are some ideas, which may or may not be terrible:
compiler
, beginner
, web
...) might help sort through the list.Does there exist any statistics of the usage of the site? Is it possible to deduce anything highlevel of that statistics? Like whos visiting, why/what are they looking for, etc?
I like the angle of @tpetricek and the stats might help in pinpointing these targets for the site, and make sure some targets are not missed. I guess @tpetricek is more or less spot on with the largest audience, but the stats might be hidding some surprising facts ;-)
The site should not forget its "intention", and mission statement should be the main focus of building the site, to support and drive the FSSF. In my thoughts that means not necessarily be a wiki of F# resources, or a site for learning F#, but at best pointers to top level resources. That also reduces work load on content.
Well, I think one area that could be taken into consideration with a site redesign is how to engage and mobilize F# users. This is a broad topic, but one way to think about it is through setting some imaginary goals about what effects or outcomes one might like to see. Here are some example goals that could be of value:
@lambdakris you expressed much better than I the kind of things that will appeal to the people who use F#, and make the site more useful for them.
Especially increasing the visibility of release notes.
Also if the most recent of @cartermp roadmaps was easy to find, and maybe one or 2 roadmaps for high profile OSS projects (FAKE, Paket, Ionide, to name a few). Or perhaps have a section where OSS authors could post roadmaps and high profile "help wanted" bugs.
@jackfoxy @lambdakris I sympathise, and of course we want to mobilise people in RFCs and give users a voice in engineering/design discussions.
However I personally think most of those responsibilities listed above lie off the core design of fsharp.org - and instead perhaps in the Core Engineering "Group" zone (note: it's not really a "group"), see http://fsharp.github.io. There has been talk of reconstituting that "group" as a core-engineering-mobilization-effort along the lines you suggest.
http://fsharp.org is the community's primary chance to interact with people thinking of adopting F# and people looking to install it, and that's unique opportunity
What those "high profile" OSS projects have to do with Foundation?
What those "high profile" OSS projects have to do with Foundation?
@Krzysztof-Cieslak Nearly all F# OSS projects are entirely independent of the foundation.
However it seems reasonable for the FSSF to encourage participation in high profile OSS projects. For example, by linking to them appropriately on http://fsharp.org/use/windows, http://fsharp.org/use/linux etc. Or by giving links for how to get involved. Or by mentoring people. Or by some of the techniques mentioned above. At least that's my personal opinion.
What specific audiences should fsharp.org target?
This is a moving target based on adoption. Right now, I see targeting the green F# programmer most valuable. This is a brand new strange world with a steep learning curve, getting people comfortable with this paradigm shift will improve adoption rates.
For each audience, what should be the main goals when a user first visits fsharp.org?
Give real world examples of the power of F# beyond just the technical capabilities. An animation that shows how checking in code that compiles but has runtime errors and how much of a ripple effect that has throughout the organization, while showcasing how F# solves those problems could be a way to connect to people unfamiliar with F#.
What major scenarios do we need to support for fsharp.org?
I can tell you what scenarios you shouldn't support. Games, emulators, or anything that requires shared state.
Closing this old discussion
The F# Software Foundation Board of Trustees has begun the process of working on a complete redesign and reworking of fsharp.org.
The plan is to hire a design firm to bring a professional polish to fsharp.org, with a specific focus on the user experience and usability. They will be focusing on helping us improve the user experience for people coming to fsharp.org. This will be coupled with some custom development to fix some technical annoyances about the current site.
We have some initial technical and design requirements that we will be taking into account. I'd like to list off our main objectives:
On the technical side:
The bulk of this effort will actually be on the design and user experience side:
With that in mind, we would like your help!
Please provide feedback of what you think is important. In particular, we'd love to hear feedback on the following topics:
Also feel free to provide feedback on your main annoyances with the current site, or any other issues that may be relevant. Note that we are not looking for UI suggestions at this point ("look and feel"), and more after honing in on the best strategy/goals/objectives.
For each major idea, please open a new issue (so each idea can have its own discussion), and link to it here in a comment. Vote on comments within this issue which you feel are important or not important. This will allow our design firm to easily watch this issue and incorporate feedback from everybody as smoothly as possible, as well as to see what people find good or lacking in the current fsharp.org experience.
Thank you, Reed Copsey, Jr. Executive Director - F# Software Foundation On behalf of the Board of Trustees