diff --git a/_posts/2018-11-18-2018-state-of-haskell-survey-results.markdown b/_posts/2018-11-18-2018-state-of-haskell-survey-results.markdown new file mode 100644 index 0000000..2a0290b --- /dev/null +++ b/_posts/2018-11-18-2018-state-of-haskell-survey-results.markdown @@ -0,0 +1,1573 @@ +--- +title: 2018 state of Haskell survey results +--- + +The [2018 state of Haskell survey][1] opened at the start of November and closed a few days ago. +It was the second annual state of Haskell survey. +This year the survey was co-sponsored by Haskell Weekly and Haskell.org. + +Last year the [2017 state of Haskell survey][2] received 1,335 responses. +This year we received almost four times as many. +However a large number of the responses appeared to be submitted by a script. +Of the 5,096 responses, 3,735 were identified as problematic and removed from the result set. +That left 1,361 legitimate responses, which compares favorably to last year, especially when you consider that this year's survey was much longer. +To everyone that participated in the survey: +Thank you! +You feedback is hugely valuable. + +I am extremely disappointed that someone decided to submit thousands of bogus survey responses. +Apparently they wanted to tip the scales on a few divisive issues in the community. +Fortunately their attack was not very sophisticated, so it was easy to identify and ignore their responses. +([This function][5] shows you exactly how the problematic responses were identified.) +Even so, it has two profoundly negative impacts: +One, it casts doubt on the survey responses as a whole; +and two, it means that I'll have to devote time to countering attacks like this in future surveys. +That being said, I have confidence in the filtered survey results and I hope you do too. + +This post will graph the responses to the multiple-choice questions. +I will not attempt to summarize the responses free-response questions. +I encourage any interested parties to download the raw results, do their own analysis, and share the results. +You can download the anonymized responses as a [CSV][3], which is licensed under the [ODbL 1.0 license][4]. + +- [Submission date](#question-001) +- [Haskell usage](#question-002) + - [Do you use Haskell?](#question-003) + - [If you stopped using Haskell, how long did you use it before you stopped?](#question-004) + - [If you do not use Haskell, why not?](#question-005) + - [How long have you been using Haskell?](#question-007) + - [How frequently do you use Haskell?](#question-008) + - [How would you rate your proficiency in Haskell?](#question-009) + - [Where do you use Haskell?](#question-010) + - [Do you use Haskell at work?](#question-011) + - [If you do not use Haskell at work, why not?](#question-012) + - [Which programming languages other than Haskell are you fluent in?](#question-014) + - [Which types of software do you develop with Haskell?](#question-016) + - [Which industries do you use Haskell in?](#question-018) +- [Projects](#question-020) + - [How many Haskell projects do you contribute to?](#question-021) + - [What is the total size of all the Haskell projects you contribute to?](#question-022) + - [Which platforms do you develop Haskell on?](#question-023) + - [Which platforms do you target?](#question-025) +- [Compilers](#question-027) + - [Which Haskell compilers do you use?](#question-028) + - [Which installation methods do you use for your Haskell compiler?](#question-030) + - [Has upgrading your Haskell compiler broken your code in the last year?](#question-032) + - [How has upgrading your Haskell compiler broken your code in the past year?](#question-033) + - [Which versions of GHC do you use?](#question-035) + - [How do you feel about the new GHC release schedule?](#question-036) + - [Which GHC language extensions would you like to be enabled by default?](#question-038) + - [How important do you feel it would be to have a new version of the Haskell standard?](#question-039) +- [Tooling](#question-040) + - [Which build tools do you use for Haskell?](#question-041) + - [Which editors do you use for Haskell?](#question-043) + - [Which version control systems do you use for Haskell?](#question-045) + - [Where do you get Haskell packages from?](#question-047) + - [Which libraries do you use to test Haskell code?](#question-049) + - [Which libraries do you use to benchmark Haskell code?](#question-051) +- [Infrastructure](#question-053) + - [Which tools do you use to deploy Haskell applications?](#question-054) + - [Where do you deploy Haskell applications?](#question-056) +- [Community](#question-058) + - [Where do you interact with the Haskell community?](#question-059) + - [Which of the following Haskell topics would you like to see more written about?](#question-061) +- [Feelings](#question-063) + - [I feel welcome in the Haskell community.](#question-064) + - [I am satisfied with Haskell as a language.](#question-065) + - [I am satisfied with Haskell's compilers, such as GHC.](#question-067) + - [I am satisfied with Haskell's build tools, such as Cabal.](#question-069) + - [I am satisfied with Haskell's package repositories, such as Hackage.](#question-071) + - [I can find Haskell libraries for the things that I need.](#question-073) + - [I think Haskell libraries are high quality.](#question-074) + - [I have a good understanding of Haskell best practices.](#question-075) + - [I think Haskell libraries are well documented.](#question-076) + - [I can easily compare competing Haskell libraries to select the best one.](#question-077) + - [I think that Haskell libraries are easy to use.](#question-078) + - [I think that Haskell libraries provide a stable API.](#question-079) + - [I think that Haskell libraries work well together.](#question-080) + - [I think that software written in Haskell is easy to maintain.](#question-081) + - [Once my Haskell program compiles, it generally does what I intended.](#question-082) + - [I think that Haskell libraries perform well.](#question-083) + - [Haskell's performance meets my needs.](#question-084) + - [I can easily reason about the performance of my Haskell code.](#question-085) + - [I would recommend using Haskell to others.](#question-086) + - [I would prefer to use Haskell for my next new project.](#question-087) + - [Haskell is working well for my team.](#question-088) + - [Haskell is critical to my company's success.](#question-089) + - [As a candidate, I can easily find Haskell jobs.](#question-090) + - [As a hiring manager, I can easily find qualified Haskell candidates.](#question-091) +- [Demographics](#question-094) + - [Which country do you live in?](#question-095) + - [How old are you?](#question-096) + - [What is your gender?](#question-097) + - [Do you identify as transgender?](#question-098) + - [Are you a student?](#question-099) + - [What is the highest level of education you have completed?](#question-100) + - [What is your employment status?](#question-101) + - [How large is the company you work for?](#question-102) + - [How many years have you been coding?](#question-103) + - [How many years have you been coding professionally?](#question-104) + - [Do you code as a hobby?](#question-105) + - [Have you contributed to any open source projects?](#question-106) +- [Meta survey](#question-107) + - [Did you take last year's survey?](#question-108) + - [How did you hear about this survey?](#question-109) + +--- + +

# Submission date ^

+ + + + + + + + + + + + + + + + + + + + +
AnswerCountPercent
2018-11-0151337.7%
2018-11-0231022.8%
2018-11-031188.7%
2018-11-04755.5%
2018-11-05634.6%
2018-11-06564.1%
2018-11-07322.4%
2018-11-08443.2%
2018-11-09221.6%
2018-11-10120.9%
2018-11-11161.2%
2018-11-12282.1%
2018-11-13352.6%
2018-11-14372.7%
+ +

# Haskell usage ^

+ + + + + + + + + + + + + + + + +
AnswerCountPercent
1 heart40.3%
2 hearts10.1%
3 hearts40.3%
4 hearts40.3%
5 hearts352.6%
6 hearts161.2%
7 hearts402.9%
8 hearts846.2%
9 hearts554.0%
10 hearts50136.8%
+ +

# Do you use Haskell? (single select) ^

+ + + + + + + + + +
AnswerCountPercent
Yes120288.3%
No, but I used to1037.6%
No, I never have453.3%
+ +

# If you stopped using Haskell, how long did you use it before you stopped? (single select) ^

+ + + + + + + + + + + +
AnswerCountPercent
Less than 1 day60.4%
1 day to 1 week110.8%
1 week to 1 month201.5%
1 month to 1 year664.8%
More than 1 year533.9%
+ +

# If you do not use Haskell, why not? (multiple select) ^

+ + + + + + + + + + + + + + +
AnswerCountPercent
My company doesn't use Haskell896.5%
Haskell is too hard to learn443.2%
Haskell's documentation is not good enough352.6%
Haskell lacks critical tools312.3%
Haskell lacks critical libraries302.2%
Haskell does not support the platforms I need120.9%
Haskell's performance is not good enough120.9%
Haskell lacks critical features80.6%
+ +

# How long have you been using Haskell? (single select) ^

+ + + + + + + + + + + + + + + +
AnswerCountPercent
Less than 1 day30.2%
1 day to 1 week70.5%
1 week to 1 month352.6%
1 month to 1 year21916.1%
1 year to 2 years23417.2%
2 years to 3 years21315.7%
3 years to 4 years14710.8%
4 years to 5 years1128.2%
More than 5 years33024.2%
+ +

# How frequently do you use Haskell? (single select) ^

+ + + + + + + + + + + +
AnswerCountPercent
Daily49036.0%
Weekly42231.0%
Monthly24918.3%
Yearly584.3%
Rarely805.9%
+ +

# How would you rate your proficiency in Haskell? (single select) ^

+ + + + + + + + + + + +
AnswerCountPercent
Beginner24718.1%
Intermediate53339.2%
Advanced35426.0%
Expert16712.3%
Master282.1%
+ +

# Where do you use Haskell? (multiple select) ^

+ + + + + + + + + +
AnswerCountPercent
Home107779.1%
Work66648.9%
School15311.2%
+ +

# Do you use Haskell at work? (single select) ^

+ + + + + + + + + + +
AnswerCountPercent
Yes, most of the time38928.6%
Yes, some of the time31823.4%
No, but my company does201.5%
No55841.0%
+ +

# If you do not use Haskell at work, why not? (multiple select) ^

+ + + + + + + + + + + + + + + +
AnswerCountPercent
My company doesn't use Haskell43832.2%
Haskell is too hard to learn765.6%
It is too hard to hire Haskell developers725.3%
Haskell lacks critical libraries483.5%
Haskell lacks critical tools413.0%
Haskell does not support the platforms I need332.4%
Haskell's documentation is not good enough312.3%
Haskell's performance is not good enough120.9%
Haskell lacks critical features80.6%
+ +

# Which programming languages other than Haskell are you fluent in? (multiple select) ^

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AnswerCountPercent
Python65948.4%
JavaScript59944.0%
Java55040.4%
C51237.6%
C++39428.9%
Shell32023.5%
C#20314.9%
Scala19814.5%
Ruby17412.8%
Rust15811.6%
TypeScript14610.7%
PHP14210.4%
Go1108.1%
Clojure936.8%
Assembly906.6%
Ocaml876.4%
Perl836.1%
R654.8%
Lua644.7%
F#644.7%
Erlang634.6%
Matlab503.7%
Objective-C473.5%
Swift463.4%
Kotlin463.4%
Groovy211.5%
VB.NET201.5%
VBA151.1%
Julia90.7%
Hack50.4%
+ +

# Which types of software do you develop with Haskell? (multiple select) ^

+ + + + + + + + + + + + + + +
AnswerCountPercent
Command-line programs (CLI)68450.3%
API services (returning non-HTML)53239.1%
Data processing43732.1%
Libraries or frameworks43331.8%
Web services (returning HTML)37127.3%
Automation or scripts35826.3%
Agents or daemons21916.1%
Desktop programs (GUI)1087.9%
+ +

# Which industries do you use Haskell in? (multiple select) ^

+ + + + + + + + + + + + + + + +
AnswerCountPercent
Web32924.2%
Banking or finance18513.6%
Education18413.5%
Commerce or retail1279.3%
Gaming594.3%
Healthcare or medical433.2%
Government352.6%
Embedded332.4%
Mobile322.4%
+ +

# Projects ^

+ + + + + + + + + + + + + + + + +
AnswerCountPercent
1 heart50.4%
2 hearts00.0%
3 hearts40.3%
4 hearts131.0%
5 hearts282.1%
6 hearts402.9%
7 hearts785.7%
8 hearts1158.4%
9 hearts765.6%
10 hearts35626.2%
+ +

# How many Haskell projects do you contribute to? (single select) ^

+ + + + + + + + + + + + +
AnswerCountPercent
043231.7%
116812.3%
2 to 548435.6%
6 to 10946.9%
11 to 20342.5%
More than 20322.4%
+ +

# What is the total size of all the Haskell projects you contribute to? (single select) ^

+ + + + + + + + + + +
AnswerCountPercent
Less than 1,000 lines of code20715.2%
1,000 lines of code to 9,999 lines of code31122.9%
10,000 lines of code to 99,999 lines of code25218.5%
100,000 or more lines of code1158.4%
+ +

# Which platforms do you develop Haskell on? (multiple select) ^

+ + + + + + + + + + +
AnswerCountPercent
Linux100373.7%
MacOS49636.4%
Windows20915.4%
BSD443.2%
+ +

# Which platforms do you target? (multiple select) ^

+ + + + + + + + + + + + +
AnswerCountPercent
Linux107579.0%
MacOS39929.3%
Windows31423.1%
BSD805.9%
Android382.8%
iOS332.4%
+ +

# Compilers ^

+ + + + + + + + + + + + + + + + +
AnswerCountPercent
1 heart40.3%
2 hearts10.1%
3 hearts30.2%
4 hearts90.7%
5 hearts251.8%
6 hearts413.0%
7 hearts503.7%
8 hearts1148.4%
9 hearts805.9%
10 hearts36827.0%
+ +

# Which Haskell compilers do you use? (multiple select) ^

+ + + + + + + + + +
AnswerCountPercent
GHC129695.2%
GHCJS1319.6%
Eta372.7%
+ +

# Which installation methods do you use for your Haskell compiler? (multiple select) ^

+ + + + + + + + + + + + + +
AnswerCountPercent
Stack91667.3%
Nix29922.0%
Operating system package27720.4%
Haskell Platform15311.2%
Official binaries14910.9%
Source936.8%
Minimal installer352.6%
+ +

# Has upgrading your Haskell compiler broken your code in the last year? (single select) ^

+ + + + + + + + +
AnswerCountPercent
No73654.1%
Yes43732.1%
+ +

# How has upgrading your Haskell compiler broken your code in the past year? (multiple select) ^

+ + + + + + + + + + + +
AnswerCountPercent
Incompatible dependencies24718.1%
Expected changes, such as the MonadFail proposal22516.5%
New warnings765.6%
Compiler bugs584.3%
Unexpected changes544.0%
+ +

# Which versions of GHC do you use? ^

+ + + + + + + + + + + + + + + + + +
AnswerCountPercent
HEAD725.3%
8.6.x32924.2%
8.4.x82560.6%
8.2.x31823.4%
8.0.x23517.3%
7.10.x785.7%
7.8.x251.8%
7.6.x70.5%
7.4.x60.4%
7.2.x20.1%
7.0.x30.2%
+ +

# How do you feel about the new GHC release schedule? (single select) ^

+ + + + + + + + + + +
AnswerCountPercent
I like it53339.2%
I am indifferent36126.5%
I dislike it503.7%
I was not aware of it21015.4%
+ +

# Which GHC language extensions would you like to be enabled by default? (multiple select) ^

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AnswerCountPercent
OverloadedStrings48635.7%
LambdaCase32724.0%
DeriveGeneric26319.3%
DeriveFunctor26019.1%
BangPatterns25418.7%
ScopedTypeVariables25418.7%
GADTs25118.4%
FlexibleInstances22316.4%
FlexibleContexts21715.9%
DeriveFoldable19214.1%
RankNTypes18713.7%
TupleSections18313.4%
MultiParamTypeClasses17813.1%
GeneralisedNewtypeDeriving17813.1%
DeriveTraversable17112.6%
DataKinds14410.6%
TypeApplications13810.1%
TypeOperators13610.0%
KindSignatures1359.9%
TypeFamilies1279.3%
ApplicativeDo1229.0%
StandaloneDeriving1178.6%
ConstraintKinds1168.5%
DerivingVia1168.5%
ViewPatterns1138.3%
InstanceSigs1138.3%
MultiWayIf1118.2%
RecordWildCards1108.1%
FunctionalDependencies1017.4%
DeriveDataTypeable1007.3%
EmptyCase926.8%
NamedFieldPuns876.4%
EmptyDataDecls836.1%
ExplicitForAll836.1%
DerivingStrategies765.6%
DeriveAnyClass745.4%
BinaryLiterals745.4%
DefaultSignatures695.1%
NumericUnderscores674.9%
PatternSynonyms644.7%
DuplicateRecordFields624.6%
ExistentialQuantification574.2%
OverloadedLists554.0%
PolyKinds544.0%
GADTSyntax544.0%
BlockArguments533.9%
NoImplicitPrelude533.9%
DeriveLift473.5%
PatternGuards423.1%
AutoDeriveTypeable392.9%
UnicodeSyntax382.8%
TypeSynonymInstances372.7%
PartialTypeSignatures362.6%
NoMonomorphismRestriction342.5%
TypeInType332.4%
TemplateHaskell312.3%
DisambiguateRecordFields302.2%
TypeFamilyDependencies292.1%
QuasiQuotes282.1%
RecordPuns251.8%
PackageImports241.8%
QuantifiedConstraints221.6%
AllowAmbiguousTypes221.6%
Arrows211.5%
EmptyDataDeriving211.5%
NamedWildCards201.5%
NegativeLiterals191.4%
ParallelListComp191.4%
DoAndIfThenElse191.4%
MonadComprehensions181.3%
OverloadedLabels181.3%
RecursiveDo171.2%
NumDecimals171.2%
NullaryTypeClasses171.2%
PatternSignatures161.2%
Rank2Types161.2%
ForeignFunctionInterface151.1%
UnboxedTuples151.1%
StarIsType141.0%
RoleAnnotations141.0%
MagicHash131.0%
LiberalTypeSynonyms131.0%
CPP120.9%
HexFloatLiterals120.9%
MonadFailDesugaring110.8%
StrictData110.8%
ExplicitNamespaces110.8%
UnboxedSums110.8%
UndecidableInstances100.7%
ImplicitParams90.7%
ConstrainedClassMethods90.7%
DoRec90.7%
OverlappingInstances80.6%
Strict70.5%
DatatypeContexts60.4%
CApiFFI60.4%
TransformListComp50.4%
TemplateHaskellQuotes50.4%
PolymorphicComponents50.4%
RelaxedPolyRec50.4%
ExtendedDefaultRules40.3%
PostfixOperators40.3%
NPlusKPatterns40.3%
ParallelArrays30.2%
ImpredicativeTypes30.2%
InterruptibleFFI30.2%
AlternativeLayoutRule20.1%
NoTraditionalRecordSyntax20.1%
RebindableSyntax20.1%
UnliftedFFITypes20.1%
UndecidableSuperClasses20.1%
RelaxedLayout20.1%
AlternativeLayoutRuleTransitional10.1%
MonoLocalBinds10.1%
JavaScriptFFI10.1%
GHCForeignImportPrim10.1%
+ +

# How important do you feel it would be to have a new version of the Haskell standard? (single select) ^

+ + + + + + + + + + + +
AnswerCountPercent
Not at all important685.0%
Slightly important1359.9%
Moderately important37027.2%
Very important30222.2%
Extremely important14810.9%
+ +

# Tooling ^

+ + + + + + + + + + + + + + + + +
AnswerCountPercent
1 heart40.3%
2 hearts80.6%
3 hearts10.1%
4 hearts171.2%
5 hearts282.1%
6 hearts352.6%
7 hearts705.1%
8 hearts977.1%
9 hearts816.0%
10 hearts32123.6%
+ +

# Which build tools do you use for Haskell? (multiple select) ^

+ + + + + + + + + + + + + + +
AnswerCountPercent
Stack99573.1%
Cabal65448.1%
Nix31122.9%
Make1067.8%
Shake755.5%
ghc-pkg695.1%
Bazel241.8%
Mafia131.0%
+ +

# Which editors do you use for Haskell? (multiple select) ^

+ + + + + + + + + + + + + +
AnswerCountPercent
Emacs52338.4%
Vi47134.6%
Visual Studio Code32924.2%
Atom1128.2%
Sublime Text836.1%
IntelliJ IDEA624.6%
Notepad++191.4%
+ +

# Which version control systems do you use for Haskell? (multiple select) ^

+ + + + + + + + + + + + +
AnswerCountPercent
Git123690.8%
Darcs423.1%
Mercurial292.1%
Subversion110.8%
Pijul100.7%
Fossil80.6%
+ +

# Where do you get Haskell packages from? (multiple select) ^

+ + + + + + + + + + +
AnswerCountPercent
Stackage86763.7%
Hackage83161.1%
Source30522.4%
Nix27320.1%
+ +

# Which libraries do you use to test Haskell code? (multiple select) ^

+ + + + + + + + + + + + + + +
AnswerCountPercent
QuickCheck69651.1%
Hspec53739.5%
HUnit33324.5%
Tasty32323.7%
Hedgehog16211.9%
SmallCheck584.3%
Haskell Test Framework533.9%
LeanCheck40.3%
+ +

# Which libraries do you use to benchmark Haskell code? (multiple select) ^

+ + + + + + + + + +
AnswerCountPercent
Criterion44632.8%
Bench544.0%
Gauge342.5%
+ +

# Infrastructure ^

+ + + + + + + + + + + + + + + + +
AnswerCountPercent
1 heart60.4%
2 hearts50.4%
3 hearts40.3%
4 hearts70.5%
5 hearts261.9%
6 hearts332.4%
7 hearts695.1%
8 hearts1077.9%
9 hearts624.6%
10 hearts30922.7%
+ +

# Which tools do you use to deploy Haskell applications? (multiple select) ^

+ + + + + + + + + + +
AnswerCountPercent
Static binaries51037.5%
Docker images40229.5%
Dynamic binaries18913.9%
Nix expressions18313.4%
+ +

# Where do you deploy Haskell applications? (multiple select) ^

+ + + + + + + + + + + + +
AnswerCountPercent
Self or company owned servers50437.0%
Amazon Web Services (AWS)32824.1%
Google Cloud816.0%
Digital Ocean816.0%
Heroku533.9%
Microsoft Azure151.1%
+ +

# Community ^

+ + + + + + + + + + + + + + + + +
AnswerCountPercent
1 heart20.1%
2 hearts30.2%
3 hearts50.4%
4 hearts80.6%
5 hearts221.6%
6 hearts302.2%
7 hearts523.8%
8 hearts936.8%
9 hearts685.0%
10 hearts32724.0%
+ +

# Where do you interact with the Haskell community? (multiple select) ^

+ + + + + + + + + + + + + + + + + + + + + + +
AnswerCountPercent
Reddit69951.4%
GitHub59043.4%
Twitter39228.8%
IRC34825.6%
Stack Overflow26619.5%
Meetups25018.4%
Mailing lists24818.2%
Slack22516.5%
Conferences (commercial)20615.1%
Conferences (academic)15711.5%
Discord1108.1%
Gitter654.8%
Lobsters654.8%
Telegram423.1%
Mastodon272.0%
Matrix/Riot131.0%
+ +

# Which of the following Haskell topics would you like to see more written about? (multiple select) ^

+ + + + + + + + + + + + + + + + + + + + + + + + + +
AnswerCountPercent
Best practices56341.4%
Design patterns37527.6%
Application architectures37527.6%
Performance analysis31222.9%
Library walkthroughs29621.7%
Tooling choices27119.9%
Debugging how-tos24518.0%
Production infrastructure23317.1%
Case studies21315.7%
Web development18913.9%
Algorithm implementations17412.8%
GUIs16312.0%
Beginner fundamentals15611.5%
Machine learning15611.5%
Project setup1349.8%
Project maintenance1259.2%
Game development1239.0%
Mobile development936.8%
Comparisons to other languages604.4%
+ +

# Feelings ^

+ + + + + + + + + + + + + + + + +
AnswerCountPercent
1 heart30.2%
2 hearts10.1%
3 hearts50.4%
4 hearts90.7%
5 hearts171.2%
6 hearts362.6%
7 hearts584.3%
8 hearts967.1%
9 hearts745.4%
10 hearts34225.1%
+ +

# I feel welcome in the Haskell community. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree110.8%
Disagree423.1%
Neutral22616.6%
Agree50236.9%
Strongly agree44933.0%
+ +

# I am satisfied with Haskell as a language. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree90.7%
Disagree433.2%
Neutral1098.0%
Agree58743.1%
Strongly agree51637.9%
+ +

# I am satisfied with Haskell's compilers, such as GHC. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree50.4%
Disagree362.6%
Neutral967.1%
Agree62646.0%
Strongly agree47134.6%
+ +

# I am satisfied with Haskell's build tools, such as Cabal. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree342.5%
Disagree14410.6%
Neutral32323.7%
Agree53939.6%
Strongly agree16211.9%
+ +

# I am satisfied with Haskell's package repositories, such as Hackage. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree90.7%
Disagree674.9%
Neutral20415.0%
Agree65348.0%
Strongly agree25618.8%
+ +

# I can find Haskell libraries for the things that I need. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree120.9%
Disagree926.8%
Neutral25618.8%
Agree68750.5%
Strongly agree15911.7%
+ +

# I think Haskell libraries are high quality. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree50.4%
Disagree493.6%
Neutral30022.0%
Agree58843.2%
Strongly agree24117.7%
+ +

# I have a good understanding of Haskell best practices. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree533.9%
Disagree26919.8%
Neutral37627.6%
Agree41930.8%
Strongly agree1067.8%
+ +

# I think Haskell libraries are well documented. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree1279.3%
Disagree35325.9%
Neutral42130.9%
Agree26519.5%
Strongly agree392.9%
+ +

# I can easily compare competing Haskell libraries to select the best one. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree1319.6%
Disagree44132.4%
Neutral36827.0%
Agree21715.9%
Strongly agree342.5%
+ +

# I think that Haskell libraries are easy to use. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree433.2%
Disagree21715.9%
Neutral54640.1%
Agree34025.0%
Strongly agree453.3%
+ +

# I think that Haskell libraries provide a stable API. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree110.8%
Disagree936.8%
Neutral40529.8%
Agree55640.9%
Strongly agree826.0%
+ +

# I think that Haskell libraries work well together. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree181.3%
Disagree1057.7%
Neutral39629.1%
Agree52238.4%
Strongly agree1178.6%
+ +

# I think that software written in Haskell is easy to maintain. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree70.5%
Disagree312.3%
Neutral1329.7%
Agree48535.6%
Strongly agree52338.4%
+ +

# Once my Haskell program compiles, it generally does what I intended. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree70.5%
Disagree574.2%
Neutral1239.0%
Agree64947.7%
Strongly agree38428.2%
+ +

# I think that Haskell libraries perform well. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree50.4%
Disagree473.5%
Neutral32023.5%
Agree63846.9%
Strongly agree14210.4%
+ +

# Haskell's performance meets my needs. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree141.0%
Disagree604.4%
Neutral15911.7%
Agree58543.0%
Strongly agree36727.0%
+ +

# I can easily reason about the performance of my Haskell code. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree1148.4%
Disagree37427.5%
Neutral41830.7%
Agree24017.6%
Strongly agree392.9%
+ +

# I would recommend using Haskell to others. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree50.4%
Disagree322.4%
Neutral957.0%
Agree41230.3%
Strongly agree68250.1%
+ +

# I would prefer to use Haskell for my next new project. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree151.1%
Disagree423.1%
Neutral886.5%
Agree31523.1%
Strongly agree76556.2%
+ +

# Haskell is working well for my team. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree261.9%
Disagree473.5%
Neutral26119.2%
Agree22216.3%
Strongly agree27620.3%
+ +

# Haskell is critical to my company's success. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree1329.7%
Disagree1138.3%
Neutral24518.0%
Agree15311.2%
Strongly agree18613.7%
+ +

# As a candidate, I can easily find Haskell jobs. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree21916.1%
Disagree30522.4%
Neutral28320.8%
Agree1037.6%
Strongly agree453.3%
+ +

# As a hiring manager, I can easily find qualified Haskell candidates. ^

+ + + + + + + + + + + +
AnswerCountPercent
Strongly disagree695.1%
Disagree1138.3%
Neutral27420.1%
Agree705.1%
Strongly agree332.4%
+ +

# Demographics ^

+ + + + + + + + + + + + + + + + +
AnswerCountPercent
1 heart80.6%
2 hearts00.0%
3 hearts50.4%
4 hearts60.4%
5 hearts221.6%
6 hearts292.1%
7 hearts544.0%
8 hearts946.9%
9 hearts745.4%
10 hearts31022.8%
+ +

# Which country do you live in? (single select) ^

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AnswerCountPercent
United States36426.7%
United Kingdom1077.9%
Germany1077.9%
Australia705.1%
France554.0%
Russia493.6%
Canada443.2%
Sweden362.6%
Netherlands342.5%
India241.8%
Japan211.5%
Italy201.5%
Poland201.5%
Finland191.4%
Switzerland191.4%
Austria171.2%
Norway161.2%
Czechia151.1%
Denmark141.0%
Belgium131.0%
Spain131.0%
New Zealand110.8%
Brazil100.7%
China90.7%
Ireland80.6%
Israel80.6%
Ukraine80.6%
Portugal70.5%
Croatia60.4%
Belarus50.4%
Romania50.4%
Argentina40.3%
Bulgaria40.3%
Greece40.3%
Indonesia40.3%
Latvia40.3%
South Africa40.3%
Turkey40.3%
Ecuador30.2%
Estonia30.2%
Hungary30.2%
Kenya30.2%
Singapore30.2%
Mexico20.1%
Thailand20.1%
Algeria10.1%
Armenia10.1%
Azerbaijan10.1%
Bolivia10.1%
Cameroon10.1%
Chile10.1%
Colombia10.1%
Egypt10.1%
Guatemala10.1%
Iceland10.1%
Iran10.1%
Kazakhstan10.1%
Lebanon10.1%
Malta10.1%
Nepal10.1%
Nigeria10.1%
Pakistan10.1%
Paraguay10.1%
Peru10.1%
Philippines10.1%
Serbia10.1%
Slovakia10.1%
Slovenia10.1%
South Korea10.1%
Syria10.1%
Uganda10.1%
Vietnam10.1%
+ +

# How old are you? (single select) ^

+ + + + + + + + + + + + + +
AnswerCountPercent
Under 18 years old131.0%
18 to 24 years old20014.7%
25 to 34 years old60844.7%
35 to 44 years old28320.8%
45 to 54 years old805.9%
55 to 64 years old261.9%
65 years or older80.6%
+ +

# What is your gender? (single select) ^

+ + + + + + + + + +
AnswerCountPercent
Male111982.2%
Female493.6%
Non-binary292.1%
+ +

# Do you identify as transgender? (single select) ^

+ + + + + + + + +
AnswerCountPercent
No107979.3%
Yes352.6%
+ +

# Are you a student? (single select) ^

+ + + + + + + + + +
AnswerCountPercent
No98772.5%
Yes, full time15811.6%
Yes, part time685.0%
+ +

# What is the highest level of education you have completed? (single select) ^

+ + + + + + + + + + + + + + +
AnswerCountPercent
Less than high school diploma221.6%
High school diploma1017.4%
Some college1319.6%
Associate degree241.8%
Bachelor's degree43231.7%
Master's degree33824.8%
Professional degree231.7%
Doctoral degree14510.7%
+ +

# What is your employment status? (single select) ^

+ + + + + + + + + + + + +
AnswerCountPercent
Employed full time87664.4%
Self employed1249.1%
Employed part time896.5%
Not employed, but looking for work674.9%
Not employed, and not looking for work523.8%
Retired40.3%
+ +

# How large is the company you work for? (single select) ^

+ + + + + + + + + + +
AnswerCountPercent
Fewer than 10 employees20515.1%
10 to 99 employees36326.7%
100 to 999 employees22516.5%
1,000 or more employees27620.3%
+ +

# How many years have you been coding? (single select) ^

+ + + + + + + + + + + + + +
AnswerCountPercent
0 to 4 years957.0%
5 to 9 years31523.1%
10 to 14 years31323.0%
15 to 19 years20815.3%
20 to 24 years1339.8%
25 to 29 years695.1%
30 or more years946.9%
+ +

# How many years have you been coding professionally? (single select) ^

+ + + + + + + + + + + +
AnswerCountPercent
0 to 4 years39729.2%
5 to 9 years35325.9%
10 to 19 years30522.4%
20 to 29 years1027.5%
30 or more years261.9%
+ +

# Do you code as a hobby? (single select) ^

+ + + + + + + + +
AnswerCountPercent
Yes118386.9%
No594.3%
+ +

# Have you contributed to any open source projects? (single select) ^

+ + + + + + + + +
AnswerCountPercent
Yes103175.8%
No20615.1%
+ +

# Meta survey ^

+ + + + + + + + + + + + + + + + +
AnswerCountPercent
1 heart50.4%
2 hearts30.2%
3 hearts30.2%
4 hearts50.4%
5 hearts272.0%
6 hearts261.9%
7 hearts453.3%
8 hearts957.0%
9 hearts674.9%
10 hearts32123.6%
+ +

# Did you take last year's survey? (single select) ^

+ + + + + + + + + +
AnswerCountPercent
No61645.3%
Yes32223.7%
I don't remember29421.6%
+ +

# How did you hear about this survey? (single select) ^

+ + + + + + + + + + + + + + + + + + + + +
AnswerCountPercent
Reddit39428.9%
Twitter29621.7%
Mailing list1218.9%
Haskell Weekly1138.3%
Lobsters785.7%
Slack654.8%
Discord493.6%
Other483.5%
In person302.2%
IRC120.9%
Telegram120.9%
Gitter60.4%
Matrix/Riot20.1%
Mastodon20.1%
+ +[1]: {% post_url 2018-11-01-2018-state-of-haskell-survey %} +[2]: {% post_url 2017-11-15-2017-state-of-haskell-survey-results %} +[3]: /static/pages/2018-11-16-2018-state-of-haskell-survey-results.csv.zip +[4]: https://opendatacommons.org/licenses/odbl/ +[5]: https://gist.github.com/tfausak/cc381ddd0ddd8304cc3eae6250966f55/782825c9e30034eff20954c7545d5fcdd0928a89#file-main-hs-L29 diff --git a/static/images/2018/11/18/question-001.svg b/static/images/2018/11/18/question-001.svg new file mode 100644 index 0000000..005a5a1 --- /dev/null +++ b/static/images/2018/11/18/question-001.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-002.svg b/static/images/2018/11/18/question-002.svg new file mode 100644 index 0000000..314fd79 --- /dev/null +++ b/static/images/2018/11/18/question-002.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-003.svg b/static/images/2018/11/18/question-003.svg new file mode 100644 index 0000000..a497bae --- /dev/null +++ b/static/images/2018/11/18/question-003.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-004.svg b/static/images/2018/11/18/question-004.svg new file mode 100644 index 0000000..9480405 --- /dev/null +++ b/static/images/2018/11/18/question-004.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-005.svg b/static/images/2018/11/18/question-005.svg new file mode 100644 index 0000000..e81aa1d --- /dev/null +++ b/static/images/2018/11/18/question-005.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-007.svg b/static/images/2018/11/18/question-007.svg new file mode 100644 index 0000000..785fe63 --- /dev/null +++ b/static/images/2018/11/18/question-007.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-008.svg b/static/images/2018/11/18/question-008.svg new file mode 100644 index 0000000..6c56815 --- /dev/null +++ b/static/images/2018/11/18/question-008.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-009.svg b/static/images/2018/11/18/question-009.svg new file mode 100644 index 0000000..109ee4e --- /dev/null +++ b/static/images/2018/11/18/question-009.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-010.svg b/static/images/2018/11/18/question-010.svg new file mode 100644 index 0000000..14704a2 --- /dev/null +++ b/static/images/2018/11/18/question-010.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-011.svg b/static/images/2018/11/18/question-011.svg new file mode 100644 index 0000000..5b629b6 --- /dev/null +++ b/static/images/2018/11/18/question-011.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-012.svg b/static/images/2018/11/18/question-012.svg new file mode 100644 index 0000000..6d659dd --- /dev/null +++ b/static/images/2018/11/18/question-012.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-014.svg b/static/images/2018/11/18/question-014.svg new file mode 100644 index 0000000..cc0c1dc --- /dev/null +++ b/static/images/2018/11/18/question-014.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-016.svg b/static/images/2018/11/18/question-016.svg new file mode 100644 index 0000000..00adc1d --- /dev/null +++ b/static/images/2018/11/18/question-016.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-018.svg b/static/images/2018/11/18/question-018.svg new file mode 100644 index 0000000..00a5106 --- /dev/null +++ b/static/images/2018/11/18/question-018.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-020.svg b/static/images/2018/11/18/question-020.svg new file mode 100644 index 0000000..baa979d --- /dev/null +++ b/static/images/2018/11/18/question-020.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-021.svg b/static/images/2018/11/18/question-021.svg new file mode 100644 index 0000000..00aeff2 --- /dev/null +++ b/static/images/2018/11/18/question-021.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-022.svg b/static/images/2018/11/18/question-022.svg new file mode 100644 index 0000000..92ef7e9 --- /dev/null +++ b/static/images/2018/11/18/question-022.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-023.svg b/static/images/2018/11/18/question-023.svg new file mode 100644 index 0000000..d2c4196 --- /dev/null +++ b/static/images/2018/11/18/question-023.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-025.svg b/static/images/2018/11/18/question-025.svg new file mode 100644 index 0000000..50b2b73 --- /dev/null +++ b/static/images/2018/11/18/question-025.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-027.svg b/static/images/2018/11/18/question-027.svg new file mode 100644 index 0000000..6e67f87 --- /dev/null +++ b/static/images/2018/11/18/question-027.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-028.svg b/static/images/2018/11/18/question-028.svg new file mode 100644 index 0000000..c41f3af --- /dev/null +++ b/static/images/2018/11/18/question-028.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-030.svg b/static/images/2018/11/18/question-030.svg new file mode 100644 index 0000000..dbf9a09 --- /dev/null +++ b/static/images/2018/11/18/question-030.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-032.svg b/static/images/2018/11/18/question-032.svg new file mode 100644 index 0000000..7d56206 --- /dev/null +++ b/static/images/2018/11/18/question-032.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-033.svg b/static/images/2018/11/18/question-033.svg new file mode 100644 index 0000000..4770e87 --- /dev/null +++ b/static/images/2018/11/18/question-033.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-035.svg b/static/images/2018/11/18/question-035.svg new file mode 100644 index 0000000..f89c7f1 --- /dev/null +++ b/static/images/2018/11/18/question-035.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-036.svg b/static/images/2018/11/18/question-036.svg new file mode 100644 index 0000000..1563b16 --- /dev/null +++ b/static/images/2018/11/18/question-036.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-038.svg b/static/images/2018/11/18/question-038.svg new file mode 100644 index 0000000..bd91fe0 --- /dev/null +++ b/static/images/2018/11/18/question-038.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-039.svg b/static/images/2018/11/18/question-039.svg new file mode 100644 index 0000000..b853422 --- /dev/null +++ b/static/images/2018/11/18/question-039.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-040.svg b/static/images/2018/11/18/question-040.svg new file mode 100644 index 0000000..ae81f98 --- /dev/null +++ b/static/images/2018/11/18/question-040.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-041.svg b/static/images/2018/11/18/question-041.svg new file mode 100644 index 0000000..f540cc8 --- /dev/null +++ b/static/images/2018/11/18/question-041.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-043.svg b/static/images/2018/11/18/question-043.svg new file mode 100644 index 0000000..23f1cc8 --- /dev/null +++ b/static/images/2018/11/18/question-043.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-045.svg b/static/images/2018/11/18/question-045.svg new file mode 100644 index 0000000..8f50fb4 --- /dev/null +++ b/static/images/2018/11/18/question-045.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-047.svg b/static/images/2018/11/18/question-047.svg new file mode 100644 index 0000000..a7cdbea --- /dev/null +++ b/static/images/2018/11/18/question-047.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-049.svg b/static/images/2018/11/18/question-049.svg new file mode 100644 index 0000000..28b0b51 --- /dev/null +++ b/static/images/2018/11/18/question-049.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-051.svg b/static/images/2018/11/18/question-051.svg new file mode 100644 index 0000000..1fb7382 --- /dev/null +++ b/static/images/2018/11/18/question-051.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-053.svg b/static/images/2018/11/18/question-053.svg new file mode 100644 index 0000000..5973328 --- /dev/null +++ b/static/images/2018/11/18/question-053.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-054.svg b/static/images/2018/11/18/question-054.svg new file mode 100644 index 0000000..346cd3a --- /dev/null +++ b/static/images/2018/11/18/question-054.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-056.svg b/static/images/2018/11/18/question-056.svg new file mode 100644 index 0000000..67a9755 --- /dev/null +++ b/static/images/2018/11/18/question-056.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-058.svg b/static/images/2018/11/18/question-058.svg new file mode 100644 index 0000000..ca33a99 --- /dev/null +++ b/static/images/2018/11/18/question-058.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-059.svg b/static/images/2018/11/18/question-059.svg new file mode 100644 index 0000000..33e95ec --- /dev/null +++ b/static/images/2018/11/18/question-059.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-061.svg b/static/images/2018/11/18/question-061.svg new file mode 100644 index 0000000..6303257 --- /dev/null +++ b/static/images/2018/11/18/question-061.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-063.svg b/static/images/2018/11/18/question-063.svg new file mode 100644 index 0000000..fc31075 --- /dev/null +++ b/static/images/2018/11/18/question-063.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-064.svg b/static/images/2018/11/18/question-064.svg new file mode 100644 index 0000000..58d133f --- /dev/null +++ b/static/images/2018/11/18/question-064.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-065.svg b/static/images/2018/11/18/question-065.svg new file mode 100644 index 0000000..359c89b --- /dev/null +++ b/static/images/2018/11/18/question-065.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-067.svg b/static/images/2018/11/18/question-067.svg new file mode 100644 index 0000000..654d298 --- /dev/null +++ b/static/images/2018/11/18/question-067.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-069.svg b/static/images/2018/11/18/question-069.svg new file mode 100644 index 0000000..149e75b --- /dev/null +++ b/static/images/2018/11/18/question-069.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-071.svg b/static/images/2018/11/18/question-071.svg new file mode 100644 index 0000000..ca6da84 --- /dev/null +++ b/static/images/2018/11/18/question-071.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-073.svg b/static/images/2018/11/18/question-073.svg new file mode 100644 index 0000000..cbc00bd --- /dev/null +++ b/static/images/2018/11/18/question-073.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-074.svg b/static/images/2018/11/18/question-074.svg new file mode 100644 index 0000000..28539c9 --- /dev/null +++ b/static/images/2018/11/18/question-074.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-075.svg b/static/images/2018/11/18/question-075.svg new file mode 100644 index 0000000..d156c16 --- /dev/null +++ b/static/images/2018/11/18/question-075.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-076.svg b/static/images/2018/11/18/question-076.svg new file mode 100644 index 0000000..325a72f --- /dev/null +++ b/static/images/2018/11/18/question-076.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-077.svg b/static/images/2018/11/18/question-077.svg new file mode 100644 index 0000000..54b325c --- /dev/null +++ b/static/images/2018/11/18/question-077.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-078.svg b/static/images/2018/11/18/question-078.svg new file mode 100644 index 0000000..951d77b --- /dev/null +++ b/static/images/2018/11/18/question-078.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-079.svg b/static/images/2018/11/18/question-079.svg new file mode 100644 index 0000000..cee4418 --- /dev/null +++ b/static/images/2018/11/18/question-079.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-080.svg b/static/images/2018/11/18/question-080.svg new file mode 100644 index 0000000..6e9af93 --- /dev/null +++ b/static/images/2018/11/18/question-080.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-081.svg b/static/images/2018/11/18/question-081.svg new file mode 100644 index 0000000..727ac56 --- /dev/null +++ b/static/images/2018/11/18/question-081.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-082.svg b/static/images/2018/11/18/question-082.svg new file mode 100644 index 0000000..29a46f0 --- /dev/null +++ b/static/images/2018/11/18/question-082.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-083.svg b/static/images/2018/11/18/question-083.svg new file mode 100644 index 0000000..4d56d11 --- /dev/null +++ b/static/images/2018/11/18/question-083.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-084.svg b/static/images/2018/11/18/question-084.svg new file mode 100644 index 0000000..e681cd0 --- /dev/null +++ b/static/images/2018/11/18/question-084.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-085.svg b/static/images/2018/11/18/question-085.svg new file mode 100644 index 0000000..c917d40 --- /dev/null +++ b/static/images/2018/11/18/question-085.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-086.svg b/static/images/2018/11/18/question-086.svg new file mode 100644 index 0000000..cf66e62 --- /dev/null +++ b/static/images/2018/11/18/question-086.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-087.svg b/static/images/2018/11/18/question-087.svg new file mode 100644 index 0000000..b438c49 --- /dev/null +++ b/static/images/2018/11/18/question-087.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-088.svg b/static/images/2018/11/18/question-088.svg new file mode 100644 index 0000000..cb516a3 --- /dev/null +++ b/static/images/2018/11/18/question-088.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-089.svg b/static/images/2018/11/18/question-089.svg new file mode 100644 index 0000000..1955519 --- /dev/null +++ b/static/images/2018/11/18/question-089.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-090.svg b/static/images/2018/11/18/question-090.svg new file mode 100644 index 0000000..f3b5958 --- /dev/null +++ b/static/images/2018/11/18/question-090.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-091.svg b/static/images/2018/11/18/question-091.svg new file mode 100644 index 0000000..25670ee --- /dev/null +++ b/static/images/2018/11/18/question-091.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-094.svg b/static/images/2018/11/18/question-094.svg new file mode 100644 index 0000000..7c6da53 --- /dev/null +++ b/static/images/2018/11/18/question-094.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-095.svg b/static/images/2018/11/18/question-095.svg new file mode 100644 index 0000000..b3f2a39 --- /dev/null +++ b/static/images/2018/11/18/question-095.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-096.svg b/static/images/2018/11/18/question-096.svg new file mode 100644 index 0000000..46ddcf4 --- /dev/null +++ b/static/images/2018/11/18/question-096.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-097.svg b/static/images/2018/11/18/question-097.svg new file mode 100644 index 0000000..f616ad6 --- /dev/null +++ b/static/images/2018/11/18/question-097.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-098.svg b/static/images/2018/11/18/question-098.svg new file mode 100644 index 0000000..57f56e8 --- /dev/null +++ b/static/images/2018/11/18/question-098.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-099.svg b/static/images/2018/11/18/question-099.svg new file mode 100644 index 0000000..cf48953 --- /dev/null +++ b/static/images/2018/11/18/question-099.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-100.svg b/static/images/2018/11/18/question-100.svg new file mode 100644 index 0000000..86e890c --- /dev/null +++ b/static/images/2018/11/18/question-100.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-101.svg b/static/images/2018/11/18/question-101.svg new file mode 100644 index 0000000..ee6dc85 --- /dev/null +++ b/static/images/2018/11/18/question-101.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-102.svg b/static/images/2018/11/18/question-102.svg new file mode 100644 index 0000000..90dba4f --- /dev/null +++ b/static/images/2018/11/18/question-102.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-103.svg b/static/images/2018/11/18/question-103.svg new file mode 100644 index 0000000..a4e53db --- /dev/null +++ b/static/images/2018/11/18/question-103.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-104.svg b/static/images/2018/11/18/question-104.svg new file mode 100644 index 0000000..cfb76c1 --- /dev/null +++ b/static/images/2018/11/18/question-104.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-105.svg b/static/images/2018/11/18/question-105.svg new file mode 100644 index 0000000..b9c4fdd --- /dev/null +++ b/static/images/2018/11/18/question-105.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-106.svg b/static/images/2018/11/18/question-106.svg new file mode 100644 index 0000000..5b892f2 --- /dev/null +++ b/static/images/2018/11/18/question-106.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-107.svg b/static/images/2018/11/18/question-107.svg new file mode 100644 index 0000000..49f2b2e --- /dev/null +++ b/static/images/2018/11/18/question-107.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-108.svg b/static/images/2018/11/18/question-108.svg new file mode 100644 index 0000000..27ee3a7 --- /dev/null +++ b/static/images/2018/11/18/question-108.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/images/2018/11/18/question-109.svg b/static/images/2018/11/18/question-109.svg new file mode 100644 index 0000000..92c47af --- /dev/null +++ b/static/images/2018/11/18/question-109.svg @@ -0,0 +1,3 @@ + + \ No newline at end of file diff --git a/static/pages/2018-11-18-2018-state-of-haskell-survey-results.csv.zip b/static/pages/2018-11-18-2018-state-of-haskell-survey-results.csv.zip new file mode 100644 index 0000000..8cfa98b Binary files /dev/null and b/static/pages/2018-11-18-2018-state-of-haskell-survey-results.csv.zip differ