Skip to content

Instantly share code, notes, and snippets.

@SheepTester
Last active July 5, 2023 02:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save SheepTester/4fdcc4350591dda121e81432a5116526 to your computer and use it in GitHub Desktop.
Save SheepTester/4fdcc4350591dda121e81432a5116526 to your computer and use it in GitHub Desktop.
A selection of wisdom of Thomas A. Powell, from the CSE 110 SP23 Slack

Apr 4th 8:32 PM, explaining the purpose of #random.

I have to replenish my supply also there is method. Humor is required if one is going to deal with insanity. You must have a deep ability to deal with things that will make zero sense. Key life skill in a world that thinks they can dry the equivalent of software concrete in 1 day or something. IRL that is ludicrous, but you will actually need to figure out how to circumvent and address magical thinking. Humor is tactic, teaching will be a tactic, a rigid system will be a tactic, etc. also who doesn’t want to have a little fun here and there 🙂

Apr 4th 9:53 PM, after someone asked for clarification on whether the GitHub-generated README.md file was considered a "new file."

Ah cool good detail thinking, but let’s hope to be sticklers but not “literalists”. Asking question is awesome, but always look for intent. The folks in industry will often be very handwavy and these labs are way too cook book prescriptive in my opinion, but it is what is needed just to verify base skills and get practice in. TL;DR - good to ask but trust yourself too! 😉

Apr 5th 5:17 PM, after someone asked how many assignments there were and when they would be due.

Remember what the class is sponsored by? Uncertainty. If you are demanding this you are demanding waterfall and determinism that is not SE. I’ve already given way too much and you simply will have none of this outside of here. This will be your max, I’ll will never spring something on you in an intro and you will learn all about the “Cone of Uncertainity” and how to navigate that.

Apr 12th 9:52 AM, about his AI-generated images that included watermarks.

Yes it has at least 4 distinct water mark types, diagonal line cross hatch, semi-transparent logo, and semi-transparent words. Of course Midjourney generally thrashes words (just thinks of them as shapes), but it is possible at times to get partial words of Getty, Shutterstock, etc.

TL;DR - this is significantly filled with clearly copyright and under no circumstance commercially usable without license content. No wonder Getty is suing a number of these things. It is straight Napster vs Music Industry. Short term lawyers win, long term cat is out of bag people like so a spotify for image gen is clearly coming.

Apr 12th 11:35 AM, about GPT taking exams.

I used this same thing in Fall 210 for a small number of students (10-12). I had it also write answers to questions and had the students read them. They had their own answers. Approaching 1/3 of the students were not able to spot the logical fallacies in the generated response. A surface read indeed looked right, but in fact it was generalized and in a few points straight wrong. It has no “mind” it is just relying on statistically similarity of text and plausible sentence construction. I think we will find for the precision of code gen for quality it may be quite challenging indeed. However, it may also cut down on cycle time and help you prototype….I guess we shall see soon enough 🙂

Apr 14th 9:01 AM, responding to a meme made about a skateboard incident that occurred in his lecture.

Indeed…it was the pog moment yesterday.

Apr 18th 7:28 PM, responding to a meme about the exorbitant amount of slides Powell's presentations have.

I am a Full Slide Deck Instructor as a Full Stack Engineers can’t be taught with 10 bullet points 1 per slide 🙂

Indeed….good news though I am going to summarize what you need to see for tests coming up. Also note, wading thru an info tsunami is a mandatory skill and I expect the info to get deeper and more messed up 😞

See all messages

Thursday, April 6 at 11:54 PM

Oh well you and I need to talk Sean. I’ve taught and be in Web dev industry since it started as in like 1993 and written extensive books on it when books where still a thing. JS is one of my specialities after HTML, CSS, and more holistic things. I tend to favor front-end as I am more motivated by the HCI and societal interactions so I am weaker on backend (though my team isn’t) but even there I am well beyond most people obviously given how long I have done this. In short if you heard of me as just the 110 web focused prof you might want to scratch a little harder and get yourself to sit down and see how we can talk more outside the course. I’d be very happy to share and always learn interesting things since you entered at a different time. I find students self taught have learned many amazing things but have big pot holes of knowledge and lack a binding world view like progressive enhancement or true user centeredness. If you can get or already have those things you’ll really be a force to be dealt with. Look me up after class and introduce yourself and we can maybe arrange to talk about your web interests separately.

Thursday, April 6 at 11:54 PM

oh and welcome to the course your interests are gonna serve you really well here!

Friday, April 7 at 10:18 AM

So here is the big deck which I didn’t finish. I want you to have in service of the assignment that released. You should read the article from the Atlantic and page thru these slides finding things that resonate with you. Then let that sit. Finally do your statement. Do not fret with the amount of slides. I will clearly state which pieces are areas that could be tested upon. However, skimming thru all this stuff should be useful to you, so please do so.

2 - Making a Software Engineer.pdf

Saturday, April 8 at 1:21 AM

No space being filled out is not the metric, I always believe in quality over quantity. If it is obvious low effort though, the graders will act accordingly.

Saturday, April 8 at 6:20 AM

Can you put this in <#C04UAVBBUAX> please so it will be answered. Thanks 🙏

Tuesday, April 11 at 2:25 AM

Since I got more than a few back channel messages about keyboards I thought I’d share one that made the rounds this AM on one of my firm’s <#C04UB32P2R0> channel.

https://www.kickstarter.com/projects/fluxkeyboard/flux-keyboard-the-keyboard-reinvented

This is an interesting hybrid combination of mechanical thinking patterns and digital keyboard flexibility.

Thursday, April 13 at 12:07 AM

set the channel description: Rage, praise, and find balance about AI. Hoping more for hands on thoughts than speculation

Thursday, April 13 at 12:08 AM

Since <#C04UPM7D3CH> really needs to keep to general topics for the class broadly if you want to have fun and speculate, promote, detract, get silly, etc. about generative AI from LLMs to image gen please keep this in <#C052QNNSX9C> Thanks! 🙏

Thursday, April 13 at 12:11 AM

So I’ll start this channel off with a prompt result observation. Any concerns about what Midjourney made for me for a “mystical cloud background”? Zoom for a closer look … totally cool, totally legit right?

image.png

Thursday, April 13 at 12:52 AM

Yes it has at least 4 distinct water mark types, diagonal line cross hatch, semi-transparent logo, and semi-transparent words. Of course Midjourney generally thrashes words (just thinks of them as shapes), but it is possible at times to get partial words of Getty, Shutterstock, etc.

TL;DR - this is significantly filled with clearly copyright and under no circumstance commercially usable without license content. No wonder Getty is suing a number of these things. It is straight Napster vs Music Industry. Short term lawyers win, long term cat is out of bag people like so a spotify for image gen is clearly coming.

Thursday, April 13 at 2:32 AM

Yeah it is interesting to think how they can get it to back out information or if they can at all. An interesting exploration would be to get it to reveal copyrighted or text it shouldn’t have. It has been done already, but it is more interesting to see it for yourself

Thursday, April 13 at 2:35 AM

I used this same thing in Fall 210 for a small number of students (10-12). I had it also write answers to questions and had the students read them. They had their own answers. Approaching 1/3 of the students were not able to spot the logical fallacies in the generated response. A surface read indeed looked right, but in fact it was generalized and in a few points straight wrong. It has no “mind” it is just relying on statistically similarity of text and plausible sentence construction. I think we will find for the precision of code gen for quality it may be quite challenging indeed. However, it may also cut down on cycle time and help you prototype….I guess we shall see soon enough 🙂

Thursday, April 13 at 6:24 AM

We aren’t doing Autograder as far as I know. The TAs did not opt to do that this quarter.

Friday, April 14 at 11:51 PM

3 - On Groups.pdf

Saturday, April 15 at 12:01 AM

Indeed…it was the pog moment yesterday.

Saturday, April 15 at 1:33 AM

All future endings…fixed it for you 🙂

Monday, April 17 at 11:27 PM

It’s a pretty common last name that is Welsh in origin and lots of people in the UK and US have it. There are over a dozen towns named that I believe. The lake you are talking about is named after John Wesley Powell who is a pretty famous and interesting person (started the USGS for example) who explored that area of the country and quite a number of things are named after him - https://en.wikipedia.org/wiki/John_Wesley_Powell

Tuesday, April 18 at 6:37 AM

Three things

  1. Team Number
  2. Team Brand / Images / Name (the designed area)
  3. Yes or No

There should be two sides which allow you to flip your sign as Yes your team agrees with something or No your team doesn’t.

If you don’t have a fancy design or color at first just the Team Number and Y/N would be a great start.

Wednesday, April 19 at 10:19 AM

Tonight’s prompt and complexity lecture

4 - Project Reveal and Process Problem Preview - Sp23.pdf

Wednesday, April 19 at 10:22 AM

Also some points

Code Generation - Github Copilot, ChatGPT-3 (free) or 4 (paid)

Text Generation - Chat GPT, Bing, Bard (Google)

Image Generation - Midjourney (the discord one I was using), DallE

Audio, video, character, etc. all exist as well

Check out https://github.com/steven2358/awesome-generative-ai and other related awesome lists for information. If you don’t know about this pattern it is useful for discovery of services and there is an “awesome list” for most topics you can imagine

Wednesday, April 19 at 10:27 AM

Finally https://en.wikipedia.org/wiki/Anthropomorphism was the word we wanted. You may find this a provocative piece (https://garymarcus.substack.com/p/stop-treating-ai-models-like-people) amongst many others. Your goal in your generative 8-ball experiment is for you team to de-risk the use of this tech and form opinions early to guide how far you might go (or not) with it in the large generic Fortune Telling app. More on design for that app Thursday!

Wednesday, April 19 at 10:28 AM

I am a Full Slide Deck Instructor as a Full Stack Engineers can’t be taught with 10 bullet points 1 per slide 🙂

Wednesday, April 19 at 10:29 AM

Indeed….good news though I am going to summarize what you need to see for tests coming up. Also note, wading thru an info tsunami is a mandatory skill and I expect the info to get deeper and more messed up 😞

Wednesday, April 19 at 10:30 AM

if you couldn’t - you can it records directories it would be easy enough to put a blank file in there don’t you think?

Wednesday, April 19 at 10:31 AM

Again keep lab questions in lab channels this week is <#C0533G4MDQD> right?

Thursday, April 20 at 7:45 AM

Yeah and remember it is not some finished product it is an exploration. Your main goal is to see with this mini-project is using AI worth it? What gotchas will you run into, etc. You collect that as well to present. Consider not finishing it could be a reasonable outcome. Real scientists don’t force an outcome they just let the experiment play out so don’t stress - just try these ideas in the 8-ball context

Saturday, April 22 at 6:19 AM

Careful…some of those are Mastodon and since I no longer use Twitter the percentage will drop. 😉

BTW more seriously if a quote is there it is meant as an appeal to an actual authority or corroboration from a voice I consider diverse and different than me, more stature or both. In short, always look into who these people are, in some cases the people being snapped are - person who wrote most important book on SE for last 5 years, person who is head of SE at Twillio, Netflix, Google, etc., DevRel person for Google, etc.

TL;DR - These are not rando snaps with rando opinions supporting my views, it is meant to help you see the thru line of “same”-ish views from those with deep backgrounds as opposed to User32465425 said “X” online.

Saturday, April 22 at 6:22 AM

You also should note the book graphics, this is a much better way for things to expose your to outside readings you may do well beyond the course. I will generally only include book references because I read it and think it is a valuable book ex. Code Complete, Joel on Software, Modern Software Engineering, Software Engineering at Google, Domain Driven Design, Team Topologies, most of the various Pragmatic Programmer books. I explain this for all so you realize those slides are giving you a reading list for beyond the course if you want one or just a snippet of the good parts if one has no time to read. 🙂

Saturday, April 22 at 6:29 AM

So some more slides are coming, but I think there is enough Meme fun in <#C04UB32P2R0> to remind folks that if your interpretation of slide volume is “The Prof expects us to read all this!?!?” Nope, that’s wrong.

Generally after we settle down in the course and form teams I will always give a volume for background and try to remind you that this is a career level topic, but for focus I will summarize it. As an example, below is early access to the UCD topic which I started (did not finish) to see.

Slides will always be provided, filled with deeper pointers, fun things, memes, thought inducers, quotes from books, toots and tweets, etc. but the key points in a more distilled way to consume it might be better like this

https://www.craft.do/s/7zdiANnydceeYS

If you like this content linked plus thumb up emoji, if not please thumb down emoji this post. Thanks

Monday, April 24 at 6:42 AM

they might indeed be trivial, but are the accurate. Can it do it? what does it suggest?

Remember the point here isn’t the 8-ball it is using the AI stuff and see what things can be automated, what can’t, etc.

note you can also write docs, improve the UI, etc.

Hint: Did you ask it what features one might put on an 8-ball app? You can keep going from that point.

Monday, April 24 at 6:43 AM

there is not, but remember this is not a PA this is an exploration assignment. You should allow yourself to try things. You could do jsdocs (a format it should be able to generate), you could do regular user docs, you could generate marketing copy for a web site supporting the app, you could make a manual test plan, etc.

There are lots of things you could TRY the point of this exercise was exploratory and de-risking of the AI stuff to see what it could/couldn’t do for your larger project. Think like that and nothing you do will be “wrong”.

We are just finding things out right?

Monday, April 24 at 10:05 AM

you should just slack it to them

Monday, April 24 at 10:06 AM

they will be organizing it per their groups and we can coordinate from there. Thanks for being on top of them. It is a bit different than gradescope/canvas so I am pretty happy you folks are asking!

Monday, April 24 at 10:17 AM

Oh ok… I think I should lean into this and just make one giant slide. Then I never overwhelm by slide number just by dimensions! 😂

Tuesday, April 25 at 2:47 AM

You might be feeling this at times

CleanShot 2023-04-24 at 11.47.00@2x.png

Wednesday, April 26 at 11:59 PM

You could indeed. However, I’ll trust you to keep it as well

Thursday, April 27 at 1:20 AM

Well yes this is being talked about a lot. Part of me really likes it, but it doesn’t really do the pairing we want for teaming, it is really an AI “rubber duck” for soloists. A true pairing bot would have absorbed and retransmit as well.

https://en.wikipedia.org/wiki/Rubber_duck_debugging

Probably useful regardless, but note how word choice and framing is really being utilized to shape people’s perceptions and value of something.

Friday, April 28 at 2:31 AM

Nice article and for BI a very balanced one. I do think that the SV $ crowd gives away the game pretty easily. See this graph

image.png

Friday, April 28 at 2:31 AM

They believe this and are acting accordingly

Friday, April 28 at 2:31 AM

https://skventures.substack.com/p/societys-technical-debt-and-softwares

Friday, April 28 at 2:32 AM

So as some have said whether or not it does grow or not, for the short-term likely people will assume that. The BI article had lots of hedges since none of us can know if it will work or not but this copied toot explains what I have pushed pre-AI and will push post-AI regardless of how it shakes out. I think it is a safe approach

Friday, April 28 at 2:33 AM

CleanShot 2023-04-27 at 11.30.16@2x.png

Friday, April 28 at 2:35 AM

I very much enjoyed the team who made

soup. While it is a terrible dish esp for those who can’t see, it is quite easy to make if you are in a hurry! 😂

Friday, April 28 at 2:35 AM

that was a reference to one of the videos which will be shown today. Look forward to all those team intros and interactive stuff this afternoon.

Friday, April 28 at 2:42 AM

Also this might make you think a bit carefully…I have a feeling the skilled may have no problem regardless of how this works out. Note the use of ChatGPT itself for me to prove a point about ChatGPT 😝

image.png

Friday, April 28 at 4:13 AM

Non-tested materials (read not a midterm item but a useful concept if you are interested) based upon class materials and activities. The broad concept has already being discussed in class and is fair game these papers just support it with data and study information if you like to see such things.

  1. An interesting read on dev proximity and its senior benefit and novice loss. Might inform how much remote you do vs in-person and how you view remote only opportunities as a new entrant to the space. TL;DR - being together benefits novice, have alone space benefits seniors at expense of novices
  2. One paper that study the idea of “Promiscuous pairing” TL;DR - switching pair partners is better than keep the same ones for knowledge share and skill growth

Again more interested in watching you all discover these things for yourself, but here is some academic type stuff if that helps give you more ease in accepting the mushy truth of things involving humans and software construction.

I’ll dump the slides for this segment shortly and a Lecture Notes for study purposes will also be provided for this segment like the one above.

Power_of_Proximity.pdf

XR4-PromiscuousPairing.pdf

Friday, April 28 at 4:15 AM

Slides for background on the in-class activities

6 - Process Model Intro.pdf

Tuesday, May 2 at 7:28 AM

There isn’t a set format, but you should familiarize yourself with this work - https://basecamp.com/shapeup. You should read the sense of the approach and Chapter 6 gives the Problem, Appetite, Solution, Rabbit Holes, and No Gos as common sections. I am not sure you need to follow those terms some of which are informal and may make it more like Summary, Overview, Solution, Problems and Avoided Areas, Plan and Architecture (includes sketches, user info, etc.

You can iterate the plan as well obviously if you start early enough. The main worry is less the format and more the work. The assignment and your mentor can provide details on what we need to see specifically to show you are using the process.

Wednesday, May 3 at 11:46 PM

We really would prefer you to work with a member. The point is basically to practice pairing. By making it part of the assignment this has allowed teams to improve their interaction, communication and improve knowledge/skill share between members.

Wednesday, May 3 at 11:47 PM

I needed to pick a better prompt injection, they already have that one. I was at the David Sedaris book reading last night and he talked about ChatGPT being used to write like him. I am certain he would have easily come up with a bizarre way of doing an injection that they wouldn’t have thought of.

Wednesday, May 3 at 11:52 PM

Example I just tried one at the first one got it into a relatively inappropriate persona. In this case a “radio shock jock”. Once in that mode it is pretty easy to get it to lean into its barriers or jump over them. Remember folks ALL the bad stuff is still in there, they are just trying to add guard rails to keep you from getting to it. If you are very creative you too can jump the guard rails

CleanShot 2023-05-03 at 08.49.20@2x.png

Wednesday, May 3 at 11:55 PM

Yeah I am not sure that was the highlight of the course so far as the skateboard might have her beat for the top prize? However, it was fun.

Wednesday, May 3 at 11:57 PM

It was me talking about prompt injection problems with direct OpenAI API access and how people can jump over and get out of your prompts without very careful safe guards in place. People probably are trying different approaches, my in class mention wasn’t creative enough. I did show one I just did this AM to show you how easy it is. You just need to be creative.

Thursday, May 4 at 1:29 AM

The notes deck for the process models deck is now available. https://www.craft.do/s/bzm9y0vVAxD6w9

BTW the time we are content complete I will have all notes summaries available for ease of study and you can consult slides for more depth, links, and of course texture/fun with memes or other memory helpers.

Thursday, May 4 at 6:12 AM

Yeah you are correct let me post some stuff about that. The main things for those three are

  1. Miller Light Paradox is just a stupid way of reminding us of trade-offs. That is the tastes great vs less filling. Clearly it does neither. Dealing with trade-offs is not marketing driven like that it should be engineering driven
  2. HiPPO - Highest Paid Person’s Opinion (aka the boss, authority, etc.) - Amazon talks about this constantly internally and it has to do with using data first as opposed to authority person’s opinion. It is a common challenge we face when building projects where a customer, boss, senior dev, etc. throws out any discussion in favor of their opinion. This can happen on your own teams as well on a small scale so be careful.
  3. High Fidelity Design - is like a wireframe just with pretty pixels. Anyway I’ll post those slides so you can run thru them.

Remember these are just things to do to get us to read slides and notes provided. Nothing more, killing the questions and getting them all right isn’t nearly as important as thinking and asking so I deeply appreciate you just did that. Slides incoming in a few

Thursday, May 4 at 6:15 AM

5 - Design Process.pdf

Thursday, May 4 at 6:15 AM

Places to consult - https://cse110-spring2023.slack.com/files/U04UPM79ZBK/F056UQG7132/5_-_design_process.pdf also maybe some useful design thoughts

5 - Design Process.pdf

Friday, May 5 at 2:26 AM

we can adjust that…probably a default for when it was copied and such things mattered in remote

Friday, May 5 at 2:26 AM

give us a bit

Saturday, May 6 at 7:44 AM

Slides and notes that go with it for ease of digestion https://www.craft.do/s/2L4dXsINIk9SO4

9-Specs and Reqs.pdf

Saturday, May 6 at 11:47 AM

Wednesday, May 10 at 11:53 PM

True you are right!

Wednesday, May 10 at 11:56 PM

I was talking about the WWII stuff it has to do with the history of the company. I think they had some issue based upon the history of the company and their attitudes towards military conflicts. They’ve actually documented it in annual reports and such “”We have a strict policy regarding military models, and therefore, we do not produce tanks, helicopters, etc. While we always support the men and women who serve their country, we prefer to keep the play experiences we provide for children in the realm of fantasy.” You can see it here - https://en.wikipedia.org/wiki/Violence_and_Lego#:~:text=Amanda%20Santorum%2C%20a%20brand%20manager,realistic%20daily%2Dlife%20scenario.%E2%80%9D.

Thursday, May 11 at 12:07 AM

I think they have a funny out because they are probably saying that is fantasy violence or something. Tell that to the Clone Troopers!. Anyway all this was beside the point really my actual point was that the 3rd party lego vendors don’t do a good job precision wise and while it works it isn’t precise enough and like code that doesn’t fit together it is a discussion of focusing on proper interaction and coupling and the largest 3rd party stuff is in the military space, though admittedly there is a lot of other things too.

On a personal note why I used the lego example besides familiarity to most people is that my wife is an avid mini-figure collector and I even still build sets on occasion even today so I was pretty aware of the subtle not quite right issues compatibility wise.

Thursday, May 11 at 12:09 AM

You probably will be able to do some initial ADRs right now if you like since you likely made some big decisions in support of the start of your project. Even if informal capture what you can before it fades as opposed to waiting for some due date.

Thursday, May 11 at 7:16 AM

Lots of details on Agile that you may find useful for your in-class group, running your project, and maybe some for the midterm.

https://www.craft.do/s/4sENC8e2F6IvuR

Thursday, May 11 at 7:25 AM

The related slides are also provided. I will note slides 8, 15, 26, 37,38, 69-74, and 108 - 114 (esp for your project) are the key items, otherwise your white notes have a much more concise summary of major points.

8 - Agile Methods.pdf

Saturday, May 13 at 1:45 AM

Must have for my teen sons.

Saturday, May 13 at 1:46 AM

Can you next make a skateboard skin and wrap a pig or something to attack me and the circle will be complete

Saturday, May 13 at 3:50 AM

The rules and details for the possible bonus on the midterm via test question creation.

Midterm Bonus Question Details

Tuesday, May 16 at 2:38 AM

It’s a pretty good one…it is missing velocity which can be a really nasty part. Probably some stuff about the meetings, but obviously most of the meetings can be run pretty poorly or not. In a lot of ways the basics of everything is right but taken to stupid extremes. Anyway this is really fun and in many ways I actually agree with it…it’s kind of my point about doing agile vs being agile. Even the idea of should you do this at all might be a function of things well beyond software such as what your organization wants/needs to support the production of software.

Tuesday, May 16 at 5:30 AM

Much of it is already up in the channel. I think I have two more to do for you. The slides of course have long been provided. If you are looking for a study guide which says memorize these question score points then that isn’t ever gonna happen. However, be there in class tomorrow and maybe you’ll get some more clues on all the material you are reviewing and how it might be applied.

Tuesday, May 16 at 8:49 AM

Here is week 1 which was an easy topic so summarizing it frankly was not really needed but just to be complete so we don’t lawyer arguments about you didn’t provide me the white notes thus I didn’t study it.

https://www.craft.do/s/BEtiGoivUaqXO5

Tuesday, May 16 at 8:55 AM

no restrictions just that it is a physical object on a 8.5/11 piece of paper

Wednesday, May 17 at 6:58 AM

yeah it was nice they added the carbon test on this. I think there are a few others that are more specific to just that. You might want to look into accessibility testers as well

Wednesday, May 17 at 7:00 AM

I just answered Gagan but we need to cover at least the basics of what labs covered in the sense of use and idea. It will not be some syntax thing. But why did we learn Markdown for example?

Wednesday, May 17 at 7:02 AM

FYI I will add another office hours for 1hr on Zoom tomorrow for any last minute questions to make-up for the change in today’s hours. We may have some TA support as well, stay tuned.

Wednesday, May 17 at 11:51 AM

Some groups wanted the activities we did in class since they seemed useful question wise (they are) so here you go

Agile In-Class Activity.pdf

Process Model Activities.pdf

Wednesday, May 17 at 11:58 AM

yes that is correct. I am really trying to redesign the test…full on Agile style to add more thinking so send away. I have I think 3 or 4 entries. I think 1 maybe 2 of these will be picked…so get yours in 🙂

Wednesday, May 17 at 12:10 PM

For completeness I am posting two decks which are support only really. Deck 10 has a number of more concrete applications of ideas like pairing, mobbing, etc. The CI/CD pipeline stuff is there and the early content I did in a demo form for that profanityFilter function touched on naming, commenting, unit testing, etc. It is pretty likely you will see a question that will have you ponder how you might improve some simple code to address various -ilities. As the study guide is rounded out you’ll see an example.

10 - Architecture.pdf

11-Building-and-Deving.pdf

Wednesday, May 17 at 12:13 PM

Important : Content and Helpful Links This the work in-progress map to the content we have covered to help you organize your thoughts and ponder our content deeply. Note: I’ll add to it so refresh the page as I’ll put in helpful sample questions. https://www.craft.do/s/OBNw9npTe8u5pS

Thursday, May 18 at 8:00 AM

Yeah unfortunately it is…cutting and chewing all this for you is A LOT of work. I’ve only started doing this in the last quarter. Alternatively rather than pound all this content last minute we have worked instead on the test and addressed any worry of volume and desire to stuff the brain (or not a desire). The test has been designed to avoid any deep volume memorization. If you go and make your cheat sheet with core course concepts that even that doc outlines in the current state, have been attentive to your project, the general ideas of the labs (at a high level), and are rested so you can think you should find the midterm a very useful exercise and evaluation of where you are.

TL;DR - review the concepts, create your cheat sheet with reminders of important things to you, make sure you understand the core points, and be rested properly so you ready to actually think during the test.

Thursday, May 18 at 8:01 AM

Please put an emoji reaction on this to show reading since this is a very important point so people strategize properly. In some sense what I was doing with you in class yesterday and asking you questions is a really deep clue of what we will do tomorrow.

Thursday, May 18 at 9:37 AM

Lab materials are only covering highlevel what is X why did we learn Y how might Z be used in our project. It isn’t a bunch of syntax. Easy cheat sheet win - what are all the topics of the labs and general reason we learned them. Example - we learned Git because…

Thursday, May 18 at 11:55 AM

Yeah that is correct. Avoid that focus. Use the content outline and understand the major points. Much of the questions for example if one would talk about HRT would tell you what was an talked about having you explain or apply it. That should help you change your mindset on how to study. That is what the tip you threaded on said as plainly as I could.

Thursday, May 18 at 11:56 AM

I likely will keep the quiz stuff though as it forces you to review decks as we go, but will keep it open so you can consult things.

Thursday, May 18 at 11:56 AM

I mean in future classes not the midterm here

Friday, May 19 at 12:04 AM

I found item I posted to one of my firm’s <#C04UB32P2R0> seems on point to share here 🙂

image.png

Friday, May 19 at 12:05 AM

Also if you took 134 or find yourself in a fight with the CSS dragon for the project you might really deserve one of these!

image.png

Friday, May 19 at 4:21 AM

Practically 99% of all readme, docs, etc. is written in Markdown.

I could lecture you for days on the pros and cons of it. But 100% understand it is more interesting and complicated than you think. It absolutely isn’t a superset of HTML it is a minor subset. HTML is a 25 year old+ lang with multiple specifications and has over 100+ active elements plus massive APIs to add elements, manipulate them, etc. However, at this stage MD is turning into HTML in some cases and in fact many variants support significant HTML subset, so the world gets fuzzy.

TL;DR - knowing that Markdown is used and why we bothered to learn is 100% all you need to know. It’s because of docs and common use. If you want to know more if it interests you I am very much your guy just DM.

Friday, May 19 at 4:22 AM

https://cse110-spring2023.slack.com/files/U04UPM79ZBK/F057Q3SHVNK/11-building-and-deving.pdf

11-Building-and-Deving.pdf

Friday, May 19 at 10:25 AM

And to think there was disappointment from the TAs about the two pages cut!?! Clearly was too long

Friday, May 19 at 10:27 AM

That checks out…length is a major fail

Friday, May 19 at 10:28 AM

Oh that’s so on point! :rolling_on_the_floor_laughing:

Friday, May 19 at 10:29 AM

Alas Akshay was deeply hoping for a light pink or other colored pen + scratches. You have failed him.

Friday, May 19 at 10:57 AM

Brief Midterm Retro Post

• Length - way too long I think 2 pages need to go bye bye. Interestingly 2 pages had been cut by me even though the TAs had liked the good questions on last page so glad we did that. I’ll reveal what those were about on Tue.

• Tie Back to Group Project - note how many questions tried to tie SE theory to your actual group practice. If you’d been ghosting your group too much & waiting to grind later parts of some questions might have been quite hard. If that is you go get involved with your team ASAP as you should.

• Curve - Yep that’s guaranteed. Since it is out 110 points standard I’d wager it will be in the high 80s to low/mid 90s. However, that’s just to give you perspective, we shall find the real number eventually.

• Submitted Group Questions Missing- all groups who submitted will get some bonus point recognition and well more than half submitted.

• Retrospective on Tuesday - 100%, Agile is about iteration. We will see how we learn and adapt.

Now rest up, esp your hand, and know that the last few weeks of the course provide wind-down time content wise, makeup and project space. This is by design so hope you utilize that time wisely as you’ve all earned it.

Lastly it’s truly good fortune for all that there is no final just our projects.

Friday, May 19 at 9:59 PM

Oh wow…should I add appropriate meme style question? 👏

Friday, May 19 at 10:01 PM

well at least I guess on the bright side we have plenty of material for easily becoming meme lords…we’ve got that..we’ve got that….

Yeah writing the thing you do on exams and when you sign things…be nice if we could type

Saturday, May 20 at 3:02 AM

Clarifying since I got some DMs.

  1. 2 less pages meant the original draft had 2 more pages that I did omit and you never saw. Those pages had some TA favs on it. My other related point had been even with my cut clearly I should have taken even 2 more pages away to make this less the hand and time killer. I guess the only benefit as someone Memed oh so well is that the midterm was Iron Triangle encapsulated.
  2. No we certainly aren’t going to just omit the last two pages as some people did those and skipped certain middle items. That would be very unfair to some folks. We’ll score all of what you have and make a curve.
  3. Yes the TA clever question that was cut will be shared for reactions in class.

Saturday, May 20 at 5:10 AM

Nah was just pointing out how utterly communicative and true that meme was. It was the test + the meme truly was a demonstration of what the model says. I think students and prof alike learned that deeply.

Monday, May 22 at 1:57 AM

know they aim to do different things the linters tend to just have rules, while the other tools score. The score systems are not just syntax based but make look at code complexity using metrics and other “code smells” or work in aggregate that most linters can not do. For example unless the linter can keep track of all files showing duplication, exposing uncalled methods, etc.

Thursday, May 25 at 2:45 AM

It’s more nuanced. For example lacking the predicted this value within an OOP style coding like a constructor arrow style would be a problem and wouldn’t work the way you’d want. In other cases it’s scope approach would be right. It is for smallish inline functional style programming not as a trendy new way of writing a function. Google to see differences between arrow and function to see articles, videos, etc expounding on this

Friday, May 26 at 9:02 AM

Keynote. 😀 also google slides also pitch also prezi also markdown and yes ppt. Once you are old like me you need to be more generic because things change

Friday, May 26 at 11:55 PM

These slides contain some general and broad thoughts about some JS dev issues you might want to consider from naming, commenting, intermixture, etc. Remember your definition of quality and approaches doesn’t need to exactly match, you just need to be purposefully in how you code as a team and what decisions you make. Arguing about if you use action naming or not is not the point, just that you understand such choices are one of many different ways a dev team might try to address readability. Of course your approach to readability might be different than the next org you work at so much of what I am doing is trying to get you accustomed to and excepting of such variability.

Next week on we will be doing decks on testing, distribution, and monitoring, plus some in-class group exercises, and hopefully some videos! I am still trying to lock down a very special guest speaker as well that may be able to address two major themes for us as we wind down the quarter.

Hope all have a productive and/or restful weekend.

12 - JavaScript Practices.pdf

Monday, May 29 at 11:37 AM

That will be fine. It isn’t lower div so we care about the work most of all. I am Sure the TA mentors will find it if you tell them ! 😝

Monday, May 29 at 11:38 AM

I go by Thomas 😜

Tuesday, May 30 at 12:41 AM

Do note if you are using issues and assigning things to people they will still be seen in activity. There are many repo signals to watch. Beware of chasing a commit volume as some sole metric to capture dev involvement, that is deeply not recommended. Imagine what this turns into. Hint- Look at lines of code (LoC) metric abuse.

Wednesday, May 31 at 9:12 AM

tonight’s activities

Testing and Ops In-Class Activity - May 2023.pdf

Thursday, June 1 at 1:00 AM

Oh come now…I did no memes last lecture. I am at least a week clean but you ruined my streak

Saturday, June 3 at 2:25 AM

Generally good advice to take all things seriously if you can. However, this quarter as all quarters have a clear indication on Canvas that helps you know what to think. Any unclarity generally aims to be in your benefit. Know we will NOT drop the midterm so it is more important than the quizzes, but our mix depended a bit on performance. We always aim for fairness and are even considering TA cohorting in curves as we are seeing clustering.

TL;DR - quiz is drop one, try to do them well midterm matters more the curving is a bit sliding. Ultimately per the overall breakdown getting that project proper is your biggest effort!

CleanShot 2023-06-02 at 11.11.19@2x.png

Saturday, June 3 at 2:37 AM

As I said in the other thread - it states it clearly in Canvas they count. That has been unchanged since the day the class started. Try to guide by the actual course and ask early and often if needed.

Saturday, June 3 at 2:42 AM

I think we put end of next week. If not we can adjust to that.

Saturday, June 3 at 2:42 AM

…very soon…the quarter is ending 🙂

Saturday, June 3 at 2:44 AM

You are correct sir and clearly the TAs and I have to edit. I will say this we will not count nonsense like that. We replaced a week for the warm-up and Cory and the other talk got dumped.

Saturday, June 3 at 2:45 AM

We should have updated…I’ll fix any of that in a moment. If there are nonsense questions like that we will normalize them out.

Saturday, June 3 at 2:52 AM

Thank you <@U0525GA7CAC|Tyler Flar> I went and adjusted all that! +1 to you in that soft points book 🙂

Saturday, June 3 at 2:55 AM

Seems topical given recent discussions and class efforts.

image.png

Saturday, June 3 at 11:10 AM

Ahhh on the way to a project idea I can get behind. Wire a meme phrase system powered by ChatGPT that then sends the generated text to a meme maker like imgflip and then posts the result to slack via a / command. I will spontaneously explode as my work on this material plane will be complete as meme velocity will be over 9000 😏

Monday, June 5 at 10:26 AM

You will be talked to by a TA about the project and what you did for point 1. For point 2 you will have a statement / assignment to bring and we will get to see and vote about various project efforts.

Tuesday, June 6 at 1:09 AM

Pretty fun stuff. I think we see that we can ease creation patterns but finding the good stuff probably will be even more important. I think that is going to be from code to viral content.

Tuesday, June 6 at 6:01 AM

sure … give me a few mins and I will post some slides up on a few topics covered lately.

Tuesday, June 6 at 6:28 AM

This was a deck I used recently in case you care about it. The in class activities covered many practical things already. For mentions of docs and such that was in deck 11 I believe. I added the BETA Deck on Repo stuff that collects much of it across a variety of decks and have uploaded it here. It is BETA content in that it is not finished, fully edited, or styled but may have useful goodies for you.

13 - Testing and Quality.pdf

Beta Deck - Repo Practices Summary.pdf

Tuesday, June 6 at 6:28 AM

See <#C04UB4FTHMG> - deck 11 and the JS deck, added the testing one and the beta deck which really is mostly consolidation from a variety of other decks

Tuesday, June 6 at 7:50 AM

Haven’t seen that in particular but have seen content farms employing AI and it is just killing SEO. We already are seeing it in customer logs. Search traffic without prior knowledge is going to become worthless at the current rate of garbage algorithm focused content being bot added. Probably imagine that if that happens we will see a return of directories, web rings, and other ancient human style vetted content. Remember such changes being opportunity as well as loss

Wednesday, June 7 at 10:28 AM

Done and done.

Saturday, June 10 at 3:53 AM

poggers “meems” <@U052DFDPK41|Shishir Iyer>

Saturday, June 10 at 12:07 PM

I guess it didn’t work?

Monday, June 12 at 10:39 AM

You think that was a smart idea Sean?

Monday, June 12 at 10:52 AM

I deleted it for you Sean. I think it would be a good idea to provide me an explanation of how you thought that was a good idea. Yes I know that was findable and obscurity style security of them and they shouldn’t have done that and it appears it was 90% of the teams, etc. but that still doesn’t really help us here in terms of you doing that. If this was a disclosure then the TAs or me would have been smarter wouldn’t you say?

Monday, June 12 at 11:09 AM

Well even if so don’t you think they would want to manage the reveal? Try to respect other people’s work and effort. I did you a solid and didn’t read into this harder, but do ponder how someone might. It wouldn’t go well.

We’ve all made wrong moves at one time, I got you Sean we’ll let it go…not like we don’t have plenty of other stuff to contend with right?

Tuesday, June 13 at 11:14 PM

Nope. No 🍕 Coordination alone would kill 20mins of the time period. Speaking from experience of a class half this size.

If you do bring food or drink for yourself please be respectful of others and of course cleanup.

Wednesday, June 14 at 7:10 AM

Yeah sure, though I don’t really expect anything to change other than chop off issues to be lowered.

Wednesday, June 14 at 9:07 PM

Correct It double serves as attendance in conjunction with the evals you and the team members do of videos

Thursday, June 15 at 2:38 AM

Yes. Traditionally that is how we help get attendance as well as your vote on videos. See above.

Thursday, June 15 at 5:42 AM

The final word on the…final

CSE110 Final Night Overview

Friday, June 16 at 7:08 AM

Go look … they are all over the place. Some do a single course and some more. Some have a full major. Others have a concentration. See CMU for example https://s3d.cmu.edu/education/undergrad/swe-concen/index.html for an example…see two courses plus two electives.

Even in the one course or two course style what the courses teach is all over the place as well. I think I started doing CI/CD stuff in 112 in like 2010 and came to find out it was a very early class in the US doing it.

In short like the topic definition you are going to get a lot of things. Some might be much better than 110 and some far far worse. The same will be said in terms of the practices you encounter once on the job.

Friday, June 16 at 12:54 PM

Some pix from tonight. You all survived CSE110 and produced some really great results. Hope everyone has a great summer and I’ll see a few of you hopefully in classes next year. Best of luck and know it was a real honor for me to help get you started on your SE journey

CleanShot 2023-06-15 at 21.48.48@2x.png

CleanShot 2023-06-15 at 21.49.45@2x.png

CleanShot 2023-06-15 at 21.50.40@2x.png

const token = '<token>'
// run in https://cse110-spring2023.slack.com/api/sdfdfg
const root = 'https://cse110-spring2023.slack.com'
const user = '<@U04UPM79ZBK>'
const getPage = async page => {
const formData = new FormData()
for (const [key, value] of Object.entries({
token,
module: 'messages',
query: `from:${user}`,
page,
count: 20,
sort: 'timestamp',
sort_dir: 'asc',
})) formData.append(key, value)
return await fetch(`${root}/api/search.modules.messages`, {
"body": formData,
"method": "POST"
}).then(r => r.json())
}
let page = 1, page_count = null
const items = []
while (!page_count || page <= page_count) {
const json = await getPage(page)
items.push(...json.items)
page_count ??= json.pagination.page_count
page++
}
const str = items.map(({messages:[{text,ts,blocks=[],files=[]}]}) => `${new Date(+ts * 1000).toLocaleString('en-US', {
day: 'numeric',
month: 'long',
hour: 'numeric',
minute: '2-digit',
weekday: 'long'
})}\n\n> ${(text + blocks.filter(b => b.type === 'image').map(({image_height,image_url,image_width}) => `\n\n<img src="${image_url}" width="${image_width}" height="${image_height}">`).join('') + files.map(({title,url_private}) => `\n\n[${title}](${url_private})`).join('')).replaceAll('\n', '\n> ')}`).join('\n\n')
console.log('<details>\n\n<summary>See all messages</summary>\n\n' + str + '\n\n<details>\n')
@SheepTester
Copy link
Author

SheepTester commented May 9, 2023

@SheepTester
Copy link
Author

the script doesn't take into account formatting

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment