Fork me on GitHub
#clojure-uk
<
2018-06-13
>
yogidevbear07:06:39

\ \ \
 / / /
 \ \ \
\-----/>
 \___/

👏 12
thomas07:06:54

hmmm... Clojure implements a pop function, but not a push function interestingly enough.... seems that you have to use conj in that case.

3Jane07:06:23

Yes and pop is weird

3Jane07:06:55

It removes the last element and returns the modified vector

3Jane07:06:41

immutable data structures have different semantics :)

3Jane08:06:30

Yeah, what I mean is, it’s no longer possible for pop to do what you “usually” think it does since there’s no destructive side effect

3Jane08:06:26

Given that, maybe it’s good that conj isn’t called push :)

3Jane07:06:00

(But if you use it on a list, it removes the first element - it’s an exact opposite of conj)

3Jane08:06:57

(def push conj) ¯\(ツ)

3Jane08:06:37

Inheritance from other languages (Lisp gives you cond and cons; personally I’m weirded out by car and cdr being head and rest/next (next???!!!)) but oh well

3Jane08:06:43

We’re all using C family vocabulary because that’s what dominated - like we’re all familiar with Latin generated vocabulary

3Jane09:06:29

If you want to gain in familiarity, do what I’m doing for Python now and go through an Anki deck of the fundamental language constructs

3Jane09:06:49

Guaranteed programming speed and visual recognition improvement

3Jane08:06:32

(I agree that naming consistency is desirable)

rhinocratic08:06:49

Morning. Odd that clojure.lang.PersistentQueue never seemed to be a first-class citizen. It seems like a useful thing, but perhaps it was felt that the functionality was covered by other mechanisms. :thinking_face:

3Jane08:06:33

Depends on what you’re doing in those languages

manas_marthi08:06:55

@agile_geek I have a similar feelings, especially towards that word "full stack developer".. I don't like to use it about myself. From what I saw people use html/css while creating data entry screens. But that does not make everyone a great UI designer. We mostly work with a design created by somebody. I used to say to my friends that anybody who tries to be equally well in fullstack is a "master of none, disaster of all"

manas_marthi08:06:05

From what I saw, people changed languages, but were sticking to a certain class of applications/problems.

3Jane09:06:12

So that depends

danm09:06:17

Ahoy hoy

👋 8
3Jane09:06:21

(The class of applications )

3Jane09:06:43

What you want to avoid is the equivalent of one year lived 20 tunes

3Jane09:06:19

If you just hammer out basic websites in Symfony, Rails and Django, I’d argue you haven’t learned much

3Jane09:06:40

If you write a website in Symfony, optimise a thing for Doctrine ORM for your specific db , and write a PHP extension in C, I’d argue you learned a lot

danm09:06:16

I never describe myself as full stack, I'm backend and happy 😉

3Jane09:06:46

True full stack is an amazing engineer (a unicorn), but most people don’t want that - they want to save money. You don’t save money this way.

danm09:06:55

I'm either Full Stack DevOps or Full Stack Back-End 😉

3Jane09:06:12

(This after being kinda full stack for some time and understanding what this entails - at the same time I wrote backend, sql, administered web server, build tools and version control, wrote UI and provided feedback on design usability)

rhinocratic09:06:49

I think that having experience of several languages probably helps to increase the number of lines of attack that one can bring to bear on a problem. Perhaps a bit like mathematics, in that sense - e.g. there are numerous approaches to topology (geometric, point-set, algebraic), and each has its strengths and weaknesses - but insights from one approach frequently lead to progress in another.

8
3Jane09:06:14

(And the only reason I managed all of that is because the scale was small, and the frameworks involved weren’t complicated. We’ve reached a level of specialisation now where I doubt this is possible in a non early startup situation )

3Jane09:06:50

They have to be sufficiently different languages, but yes

👍 4
rhinocratic09:06:49

True dat. The ALGOL-derived languages seem largely interchangeable, and the pain of acquiring them is mostly from assimilating their huge attendant ecosystems.

danm09:06:09

I know I'm not a good UI designer when it comes to looking nice and usability. If someone else designed it and asked me to implement it I could probably do that, but I wouldn't enjoy it

thomas09:06:36

my job title is fullstack... but I just about manage on the front end... certainly don't know how to style things in CSS (even if there is a design)

danielneal09:06:25

align-items: space-around

💸 12
flefik09:06:15

Morning

👋 8
alexlynham10:06:12

morning

👋 8
alexlynham10:06:13

I started off as a UI person, ended up managing servers... but the problem with UI is your knowledge is out of date in five mins

rhinocratic10:06:10

Feels a bit like the Red Queen effect - keep running faster and faster just to stay in the same place.

💯 4
danielneal10:06:01

especially when javascript is involved somewhere

3Jane10:06:59

otoh, usability knowledge is always fresh (in that human brains never upgrade 😄 )

😀 12
8
otfrom10:06:58

one of the things I like about clj/cljs is being able to move from front end to back end and back

👍 4
metal 4
otfrom10:06:22

the only thing that would really catch me out is not knowing all the things the browser could do and being a bit weak on css

otfrom10:06:46

so I just ended up in a safe-ish subset of css which meant that my pages weren't terribly exciting

manas_marthi10:06:59

developers are not known for expertise in color theory

manas_marthi10:06:54

we did a POC and then the UX team were brought, they turned it around into a beautiful thing.. they have http://humanfactors.com expertise..

otfrom10:06:57

yeah, but going with something boring usually works

otfrom10:06:14

(at least when doing small things, PoCs, MVPs)

otfrom10:06:02

unless the design focus is the essential part of the MVP, but being full stack doesn't mean you don't collaborate with experts

mccraigmccraig11:06:18

10x-full-stack devs don't collaborate with anyone @otfrom , experts just slow you down troll

😭 8
3Jane11:06:00

so… this will be controversial but I think beautiful != usable

3Jane11:06:19

art is meant to arrest your attention, while a good ui should disappear

3Jane11:06:42

you can certainly end up with an offensively ugly and complicated ui, but good ui by definition should be somewhat boring, because it’ll reuse shortcuts that already exist in your brain.

guy11:06:37

y not both

guy11:06:35

also i find its beauty with respect to something right

guy11:06:56

Like you have a Website that is beautiful because its simple

guy11:06:09

or maybe im getting confused 😂

3Jane11:06:24

is IKEA art? :thinking_face:

thomas11:06:55

but how about this one... if a UI is not pleasing to the eye (ie. beautiful), can it still be usable?

3Jane11:06:02

<greek-philosopher>is beauty indicative of goodness?</greek-philosopher>

4
3Jane11:06:35

Beauty, art, pleasing to the eye. We do need a venn-diagram here 😄

thomas11:06:37

personally for me it helps if it is pleasing to the eye.

3Jane20:06:44

oooh very nice splitting out into traits

3Jane20:06:52

and this is what I was trying to express:

3Jane20:06:55

> Good design is unobtrusive > Products fulfilling a purpose are like tools. They are neither decorative objects nor works of art. Their design should therefore be both neutral and restrained, to leave room for the user’s self-expression.

8
3Jane11:06:57

also @agile_geek you seem to have infected the channel with thoughtfulness today 😄

thomas11:06:05

the layout alone can be art.

guy11:06:47

How do you define usable :man-shrugging:

guy11:06:02

If it works even though you hate the process is that usable?

thomas11:06:27

I would say no...

thomas11:06:40

but usable is a subjective thing of course

manas_marthi11:06:45

okay, i was lazy.. I intended to include multiple attributes (aesthetics + ease of use + intuitiveness of following the UI activity flow + follow necessary accessibility standards )

manas_marthi11:06:03

am I talking like a solicitor? I don't want to. Is there a single word to communicate all of these?

3Jane12:06:28

it’s a multi-criterium optimisation with many local minima

3Jane12:06:30

one of the big problems is that as we learn something, our brains habituate and we become unable to communicate with people who haven’t undergone the same habituation due to differences in perception

3Jane12:06:32

there are two fascinating books on this subject by Tanya Luhrmann: “Persuasions of the Witch’s Craft” and “When God talks back: Understanding the American Evangelical Relationship with God” (the first one was her studying occult and Wicca groups in London, and the other one as the title says, Evangelical groups in …California iirc)

3Jane12:06:50

not ui design, but I never stop being amazed by how much our previous experience literally shapes us (modifies what happens with our brain) as well as how it filters our perception of the world

danm12:06:53

@lady3janepl Have you seen the new info about Cyberpunk 2077 btw, and the new trailer?

3Jane12:06:49

I keep thinking… there was another Diablo-like thing that made for a fun coop, with more story

danm12:06:10

Torchlight?

3Jane12:06:27

No, I poked my co-player, maybe he remembers 😄

3Jane12:06:01

more story focused

3Jane12:06:49

grim dawn! one of those was grim dawn

danm12:06:45

interesting, I don't think I've come across that one before

3Jane13:06:00

I think it was a kickstartered game

3Jane13:06:16

the creators had a previous one, titan quest, but I haven’t played that one

danm13:06:10

That I've heard of, but also not played

3Jane13:06:55

it’ll be a bit old at this point I expect

otfrom12:06:35

@lady3janepl when I studied HCI, uh, many moons ago, it was called interface damage

danm12:06:19

interface damage?

otfrom12:06:32

wrt to MVPs - depends on what you need to test really. Art might be the thing you want. Tho I'd say design isn't art as such though it is quite happy to knock it out and go through its pockets.

otfrom12:06:00

@carr0t yeah, or "why don't people understand my new interface. It is better than the old one"

3Jane12:06:32

the going joke was, two students find a stack of handwritten notes on the street. “Hey, what’s that?” “No idea. Let’s make a copy!”

3Jane12:06:36

(xerox copy)

danm12:06:03

I'm sure I must have done that. Not too much though. The lecture slides/notes were generally written and made available prior to the lecture, so I would print them out and make notes only as an aide memoir(e?) on those for bits that I found particularly hard to grok

danm12:06:40

It also meant I could skim the notes the night before and if it all seemed pretty easy to understand and self-explanatory I could skip the lecture 😉

3Jane12:06:06

sometimes you could do that, other times the professor had handwritten notes and wrote chalk-on-blackboard

3Jane12:06:20

…something something, uphill both ways in the snow XD

danm12:06:25

We had one who used an acetate roll and an OHP

3Jane12:06:19

see, you think that printing would make things easier, but actually writing things down meant you learnt much more

danm12:06:39

It was... not fun. Trying to write down what he'd written before the acetate was scrolled off the OHP, while also listening to understand it

danm12:06:00

I always found that writing meant I was paying attention to the words so I could get them down, but it wasn't until I re-read them later when I wasn't focused on writing that I actually realised there were bits I didn't understand and had to ask about. With the lecturers who provided slides, I could do that in the lecture

3Jane12:06:01

That makes sense, if they provided slides upfront. I could never come up with quesitons when they ask you at the end “does anyone have any questions?“ 😄

3Jane12:06:49

same problem in meetings, I’m testing whether learning shorthand will help

rhinocratic13:06:34

Anyone remember those Banda machines with the whiffy spirit and feeble purple ink?

danm13:06:06

I understood all the words in that sentence (except possible 'Banda'), but...

3Jane13:06:16

it sounds like something from 70s counterculture

3Jane13:06:45

or possibly indie rock band names

rhinocratic13:06:47

Erm - it's kind of hard to describe. One would draft an original by writing (pressing down rather too hard) on a top sheet of paper backed with a strong pigment, then place that copy on a drum. The drum rotated through said whiffy solvent, and leave a barely legible impression on a supply of other sheets that were fed into the machine.

rhinocratic14:06:37

Those were the things! The mechanism sounds somewhat more involved than my hazy recollection of it.

mccraigmccraig14:06:41

i seem to have vague recollections of seeing them at school in the 70s

thomas14:06:32

we had these at school until the late 80s: https://en.wikipedia.org/wiki/Mimeograph

thomas14:06:49

not sure what the difference is though

otfrom14:06:58

we had mimeographs in the US. They smelled great

thomas14:06:31

is that the ozon?

thomas14:06:08

and in Dutch of course it is called a stencilling machine.

agile_geek16:06:05

I remember them from school