cover

aesthetic ideals

[[outline/outline]]

[[kintsch_von_dijk_strategies_understanding]]

[[kitsch_van_dijk_towards_model_text_comprehension]]

the practice of programmers

this section focuses on the applied practice of describing things to the computer. who does it, how they do it, and how they relate to it. it would particularly focus on the historical/sociological aspect of it, to start highlighting that there might be one concept of computing, but the reality of interacting with and thinking in terms of computation is not unidimensional. it establishes different categories of people writing source code: researchers, academics (teachers+students), professionals, hackers, amateurs and artists.

I argue that aesthetics can help grasp software’s multitude

[[hayes_cultures_od_code]]

[[cox_mclean_coding_praxis]]

software developers

[[knuth_art_of_programming_vol_1]]

[[martin_clean_code]]

[[mcbreen_software_craftsmanship]]

hackers

the underhanded c code contest

[[graham_hackers_and_painters]]

[[mateas_montfort_box_darkly]]

scientists

artists

[[paloque_berges_poetique_des_codes]]

ideals of beauty

this section extracts the features that are recurring in the discourses around beauty in source code. it does so by looking at how practical examples and theoretical statements either converge or diverge and how such statements are modulated by the aforeidentified communities. the common point identified, via the subjectivity of writing code, is the concept of the craft.

beauty as a lack of ambiguity, as efficient achievement of an aim (aim of frustration/clarity/imagination)

lexical field in programmer discourse

[[chandra_geek_sublime]]

[[cramer_words_made_flesh]]

[[mitchell_art_of_computer_graphics_programming]]

functional beauty

this first approach, by comparing both source and comment at the same time (taking texts which are explicitly described as being beautiful), explicitly highlights the requirements for source code to be beautiful.

[[pugh_beauty_simplicity]]

[[pineiro_aesthetics_of_code]]

[[cox_the_aesthetics_of_generative_code]]

[[mattt_as_we_may_code]] -> this is somewhat almost architecture, brings a hint

[[mclennan_aesthetics_software_engineering]]

[[pressman_software_engineering_practicioners_approach]]

literary beauty

this second approach contrasts with the functional component of the first one, but nonetheless stands in relationship with it. the creative beauty, by defying traditional beauty standards, does help us highlight, through deviance, what the norm is. these texts on “creative beauty” include the classical perl poetry, code poems, IOCC, code poetry contest, etc.

[[black_art_of_code]] [[raley_code_surface_code_depth]]

[[sondheim_codework]] [[ward_authorship_of_generative_code]] [[knuth_literate_programming]]

mathematical beauty

[[mclennan_elegance_software_design]]

beautiful proofs in geometry?

Elegance: Through a single lens, it communicates the problem it solves and the machinery of its solution.

[[fuller_software_elegance]] [[spinellis_reading_writing_code]] [[iverson_notation_as_tool_for_thought]]

craft and beauty

this subsection also allow us to introduce the concept of craftsmanship and integrate it within a larger tradition of sennett/de certeau/rancière, and connect the practice of programmer to a longer history of craft, a history which in itself has beauty standards TODO

[[sennett_the_craftsman]]

the zen of python could tie in to that tradition

this includes practical tips and software craftsmanship

“to grok” -> an expression which means “to grasp vaguely, to have an intuitive understanding of”

[[jones_reckoning_with_matter]]

modes of knowledge

this section focuses on “you will know when you see it”

Implementation as: THIS GOES WITH GOODMAN

explicit

tacit

practice is synthetic method, a method which regroups, which puts together.

[[freeman_science_as_a_craft]]

[[mills_intellectual_craftsmanship]]