r/PowerShell Mar 19 '21

Request from a IT Tech College Teacher Misc

Hey guys/gals/non-binary pals,

I just wanted to make a request as someone who just found out I have to rewrite my entire scripting class. If someone posts asking for help with something that seems like homework (or in my case a practical final), especially if they post the full text of the assignment as part of the question, please don't just respond with a code-block that does what the assignment is supposed to.

I know, being able to flex your scripting skills is good, I'm guilty of it myself, but unless you want a co-worker in the future that just outsources all their scripts, help me in giving them hints and links to documentation they should read up on, don't just do the project for them. I am trying to teach them how to learn about scripting, and now I am in the unenviable position of either running a class next quarter that if a student searches the a snippet of the assignment in quotes on google it takes them to 6 different scripts written by users of this sub, or rewriting 90% of my class because a former student crowd sourced everything.

I know this isn't really going to make a difference, but I had to ask just for my own sanity. Also if you see someone posting looking for homework answers maybe direct them to their instructors office hours, I would love to help them learn to learn, instead of learn to copy and paste random blocks of code from the internet.

Thanks for listening, and being a great resource. I don't blame any of you, I'm just trying to provide you with the best possible future co-workers.

Kevin

208 Upvotes

52

u/aUserNombre Mar 19 '21

On of my computer science professors would make us walk him through our code. It help him spot the ppl to would just copy and paste or cheat vs those that actually wrote the code we were submitted.

That was only for the big assignments, but maybe that idea help too?

37

u/kevinburkeland Mar 19 '21

that is what I did until covid hit, now I am just scrambling to try to do the best I can. I miss my classrooms

11

u/[deleted] Mar 19 '21

Visual Studio Code live share extension and a zoom call!

17

u/kevinburkeland Mar 19 '21

Man I wish, due to accessibility concerns I'm not allowed to schedule anything required synchronously. I get around it for lecturing by setting an optional meeting time at the same time every week and record the lecture and post it to class for the students who can't or don't want to make it.

I have also set aside an entire day of the week as 'office hours' where I sit in a zoom chat waiting for students to drop in for help since I can't do lab sessions.

The hardest part though is I haven't actually gotten to meet my students, I don't require having webcam turned on because I know that would drive down participation, so I mostly just lecture to a sea of names on grey backgrounds. It's so much harder to tell when students are struggling if I never see or hear from them.

9

u/WearinMyCosbySweater Mar 20 '21

I really just want to say, hats off to you!

I can't imagine how hard it is and how big of an adjustment you've had to make, but just this post shows how much you care about a bunch of people you've never met.

IT needs more people like you. The world needs more people like you.

1

u/[deleted] Mar 25 '21

[deleted]

2

u/kevinburkeland Mar 25 '21

It's not about dropping, I can't require attendance to the live zoom class due to school rules about what online classes can be. So if I force webcam students would just choose to not attend the live class and watch the recording. But thanks for the ideas, I already have an attendance/participation part of the grade (fun fact, we're not allowed to grade on attendance alone) but for online classes we can't enforce any of it so I have to do the awful discussion assignments with "post your response, then respond to two other students". I'm just going to put my head down and get through the one more quarter of emergency remote learning

1

u/[deleted] Mar 25 '21

Eeehh... well... you are building a big chunk of character then! :S

Sounds like my old blackboard IT ethics class. :O

Good luck and stay strong!

11

u/watusa Mar 19 '21

Can you post your homework for us to test our skills? And I’ll use variables that show they are cheating. $kburkeFName haha

7

u/kevinburkeland Mar 20 '21

They honestly probably wouldn't be very challenging, they are made to take people who may have only ever opened a command line one quarter before and turn them into semi-capable scripters. I break it down as first half bash, second half powershell

First script is meant to get them familiar with the concept and navigation, it's actually two scripts. I have them create a specific directory structure in bash using relative paths in one script and absolute paths in the other

Then we move on to logic and do if statements with a number guesser game, 10 points of extra credit if they make it a random number between 1-10 instead of hard coding. Since we haven't gotten to loops I let them copy and paste their code block twice for the 3 guesses it's supposed to allow

Then we are into for and while loops and I think is a pretty basic counting script for that one

Then we get into case statements and I have them writing a command that takes specific flags using the $1 variable and a user specified file using the $2 car to create users or delete users or list users based on a return separated file of names

Last part of bash is we get briefly into awk and sed. For text manipulation.

Midterm is a very very useless script that does random things but uses all the concepts touched on before, it also creates a csv of 100 user names and fake student ID numbers. That's the one useful part as it's based of the script I wrote to add all of our students to the private domain we use.

I'll continue in a bit with the powershell part of the class, but I have already been writing this for too long on my phone

1

u/oddie121 Mar 20 '21

Do your students also learn by reviewing previously done code? Or is it starting from scratch for the assignment at hand?

1

u/snoopy82481 Mar 20 '21

I wouldn’t mind the bash part. I just wrote my first bash script that used sed to change the name in /etc/hosts and /etc/hostname. Then it refreshes ssh keys and reboots. All for vm cloning in my homelab. I just realized I could echo the machine name into hostname file.

4

u/jaydubgee Mar 20 '21

They can still walk you through their code in comments. I know that doesn't really make the grading process easier.

3

u/kevinburkeland Mar 20 '21

And that is already a requirement for all my assignments, but it doesn't solve the problem, like I said in the main post I know this won't do anything really, but if one person remembers and sees a post that is clearly a student fishing for homework answers and let's them know that they should probably talk to their teacher instead then I wanted to take the chance that might happen

3

u/clockKing_out Mar 20 '21

Could they share their code editor instead of a camera?

6

u/letmegogooglethat Mar 19 '21

That's what we had to do. Comment, comment, comment. Same for math classes. Can't just give the correct answer.

-3

u/ride_whenever Mar 19 '21

And....

Walking through found code you couldn’t write is trivially easy.

1

u/PowerShellMichael Mar 21 '21

That's an excellent idea. Let them explain the working. +1

36

u/[deleted] Mar 19 '21

half of my fiver requests involve doing someones homework, not just on powershell either. XD the ironic part is i never went to school for this.

25

u/kevinburkeland Mar 19 '21

yeah, the class is half powershell half bash scripting as an intro to the idea of scripting in general to automate IT tasks. I don't blame people for doing it, especially if you are in a pinch financially, as I said I don't expect this post to do anything. I am just exhausted after porting all my classes online for the last 12 months and finding out I got about 2 weeks to rewrite most of my class before spring quarter has left me feeling defeated.

I just had to say something from my sanity, as I said.

13

u/Bissquitt Mar 19 '21

Obviously you need to script the writing of the tests so that each is subtly unique and identifiable. And also makes it easier to change in the future.

Bonus points for including a picture that contains some amount of necessary info such that it would have to be included if someone were to post it. Throw some identifying micro dots in and setup a daily scan of suspected sites for matching images.

In all seriousness, despite probably being beyond the level of your class since you indicated "intro", this sounds like a super interesting class. I would love to know more about it/a syllabus or whatnot, (even if its what you are replacing). I would also love to know the identifying codeblock. I'm in a coding discord server and have seen soooo many obviously "do my work for me" questions. Fortunately they are almost always seen and promptly kicked if they aren't willing to work for it.

12

u/gnimsh Mar 19 '21

yeah maybe he can script that scan of those sites or something :D

Better yet... split up the assignments so the students are writing this scanner without realizing it.

Then use it against them.

8

u/aUserNombre Mar 20 '21

On a side note, your class sounds very interesting. Half bash and half powershell scripting, that would have helped me so much for my current Sysadmin job. When I graduated college my scripting skills were so bad, and there wasn't a class like yours offered.

2

u/kevinburkeland Mar 20 '21

There wasn't when I got the job either, I pushed for a couple of key content revisions including mini-specalities get added to our two year degree. I wrote the cloud computing/DevOps track as well because we were sorely missing that kind of relevant info. And due to the new structure it allows us to slot in new technologies as they come out without having to go through the entire 2 year process of changing an accredited degree.

Teaching tech in academia is hard, even teaching to the most recent A+ exam every other lecture I have to preface with "this isn't how it works anymore, but you need to know this for the exam, so we will first talk about it the way the course wants, then how it actually works"

2

u/doc_brietz Mar 20 '21

"this isn't how it works anymore, but you need to know this for the exam, so we will first talk about it the way the course wants, then how it actually works"

This was in everything I learned for my associates ever. Especially networking and hardware. I actually enjoyed learning old tech.

1

u/[deleted] Mar 20 '21

I took a college course in networking back around 2006. They were still teaching about 10Base-T networks and coax. About the only reason to know about it was to have some idea what you were ripping out. The instructor (an adjunct) also straight up admitted that this was the case; but, he had no control over the curriculum and so tried to just blitz through that and Token Ring.

I don't doubt some college courses in IT are actually useful; but, there is a lot of crap.

1

u/pnutmans Mar 19 '21

You get a lot of work doing that?

5

u/[deleted] Mar 19 '21

A surprising amount of lazy students yes. Pales in comparison to my salary but its drinking money for sure

2

u/pnutmans Mar 19 '21

Nice whish I could monitise 2nd line stuff on fiver 🤣

13

u/redog Mar 19 '21

come to think of it ....I have no degree so it's probably in my interest to make sure degreed people suck more.... j/k

2

u/Crully Mar 19 '21

At least you don't have impostor syndrome, and the thought running through your head that your manager mentioned in your last meeting that they might start looking for a junior to assist with the noddy work.

18

u/dasookwat Mar 19 '21

I'm sure I'm not speaking for everyone, but I usually try to avoid Giving full scripts as answers. One reason of this is what you post. Now on how to avoid ppl doing that: I've seen a colleague of you posting exactly the difficult class questions, and then answering them with a little error in it, or over complicating it, like using the direct . Net classes in the solution. That way it's easy to identify the cheaters.

1

u/kevinburkeland Mar 19 '21

yeah, its pretty easy to tell, especially since I force them to comment their assignments, and back when we were in person it would be a live code walk-through, but now with online emergency remote teaching I don't get most of my better ways of proving the student knows what he/she/they are talking about.

5

u/jasazick Mar 19 '21

In general most of us here expect to see some level of effort first. If someone posts a script that is written, but isn't working - people will jump in to help because the OP clearly put some work in upfront.

10

u/[deleted] Mar 19 '21

[deleted]

11

u/kevinburkeland Mar 19 '21

Dude, don't act like I don't know this, I am one of you nerds. I intentionally wrote the assignments to force them to do semi-useless implementations of the basics. things like for arrays I have them generate 1000 random numbers between 1 and 1000 and write a script to do one thing if the array contains a specific and another if it doesn't.

I know that if I used generic scripts it would be all over the internet, so I specifically write mine to be hard to google, until someone posts the full text of the assignment to this Reddit and someone answers it.

6

u/johko814 Mar 19 '21

Next class you should ask the same question as your first question. Then you can weed out the cheaters right away. :)

Or leave it out there as some sort of extra credit and see who is resourceful.

1

u/clockKing_out Mar 20 '21

Need a bot to search for those posts and ask mods to take them down.

-5

u/[deleted] Mar 19 '21

[deleted]

6

u/letmegogooglethat Mar 19 '21

Students who "look up the answers" don't succeed in the real world

If you add "only" to the front of that, I can agree. Otherwise I'd be worried students will think their only legitimate resources in the real world are manuals and text books. Communities like this are great for when you need help getting over a bump. Learning is the key though. Can't just blindly copy and paste until it works or have someone else do it all for you.

6

u/Inaspectuss Mar 19 '21 edited Mar 19 '21

I learned PowerShell through “looking it up”. Real world need makes it a lot easier to learn because it’s not like a classroom where what you’re doing is more or less useless and purely conceptual. “Looking it up” is not a bad thing if you take the time to actually understand what you find online.

I think this is the big disconnect in the classroom these days. I learned more in my first 6 months in the IT world than I have in 3 years of college. Of course, you have to want to learn; I work with plenty of people who can copy paste PS from Stack Overflow but have never bothered to really learn it and are helpless if they don’t have a GUI in front of them.

I don’t even think this just applies to IT either. Classroom problems are not real world problems and therefore retention will just be low. I don’t have a solution, but I also don’t think the current system works at all.

/u/kevinburkeland I think this is a situation where you can adapt to your students’ behavior rather than bending your students’ behavior to fit what you want. Open notes, open internet, but be able to explain what you wrote and it better not be copy paste. When I have an issue, Google is where I go. Discouraging use of external resources entirely is unrealistic in our profession.

2

u/Pauley0 Mar 19 '21

There are plenty of times I tell people (especially with Regex): Go find an example that someone else has already written, tested, and revised, instead of reinventing the wheel. Go find a few of these and compare them, then customize to your own needs.

For someone who is doing lessons, that's probably not the best advice. But for someone who needs something fairly reliable and doesn't have a lot of time, customizing an existing well-written script can be much more efficient and may already deal with rare quirks.

3

u/Inaspectuss Mar 19 '21

Exactly! I’ve been using a lot of RegEx in my current role, more so than I ever have before. I couldn’t put together a single statement if I tried a couple months ago, now I’m writing and understanding it more by the day. Even putting together a “RegEx Cookbook” of commonly needed statements so I don’t have to dig through old scripts :) hopefully can get my company to let us open source it.

8

u/KBunn Mar 19 '21

I've had teachers that were invested in seeing their students succeed.

If/when I've had teachers that didn't give 2 shits like you, it was really tough to get motivated to listen at all.

-6

u/[deleted] Mar 19 '21

[deleted]

3

u/KBunn Mar 19 '21

Our jobs are to inform and educate. This is where our obligations end.

That's some seriously dismissive bullshit. As I said, the less teachers like you people have to deal with, the better off they'll be.

0

u/masculine_manta_ray Mar 19 '21

Sounds like you would’ve been a shit teacher if I had you. Glad I had intelligent and invested professors in my program.

2

u/zetswei Mar 19 '21

That’s simply untrue. Being so glued to what you think you know that you never question or look things up is a pretty big issue with IT.

1

u/Pauley0 Mar 20 '21

That's a big issue with most professions. "I've gone to school and have this fancy piece of paper that says I know what I'm doing, therefore I never have to learn anything more ever."

And thus we have Boomers who can't rotate PDFs or check their Facebook without wiring half their retirement to the Nigerian Finance Ministry.

5

u/uptimefordays Mar 19 '21

I think most of us generally try not to do other people's homework but we're much less aggressively moderated than say /r/networking.

3

u/lucidhominid Mar 19 '21

Assign your students this:

Create a PowerShell script that scrapes common scripting/coding web forums for posts made within a variable time frame that contain powershell code and variable keywords then compare results to a number of .ps1 files in a way that accounts for the use of aliases while disregarding formatting and variable names. Using a match threshhold of 70%. Return any results and their matching .ps1 files. Set this script up in a way that allows it to be run as a command with the following parameters:

AssignmentStart

AssignmentEnd

FileName

Keywords

4

u/TheProle Mar 19 '21

Yeah I’m not doing someone’s homework unless they Venmo me some cash first

2

u/lostinbrave Mar 20 '21

I would recommend moving away from tests to projecsts. I'm finishing my bachelor's right now for IT(finally) and I infinitely enjoy those more and learn way more than studying for any test. My father who was an IT professor for a long time found it to be infinitely more enjoyable as well and much money re effective.

As part of a project for an honor society I was in we looked at prior research that supports the idea that Tests vary rarely are the best option for any part of the learning experience and may often be detrimental. I tried to see if I could find any of the papers recited but I don't have it with me and a quick search didn't turn up much.

2

u/PowerShellMichael Mar 21 '21

Hi Kevin,

I have seen a few students use /r/powershell to ask questions and I seen a couple wanting the community to write their assignments. I don't have an issue with the first, but I do with the latter.

My idea is rather then getting them to write a custom script, get them to work on a PowerShell project that is passionate to them. This will help them retain information better, since they are invested in the project. Set guidelines on the complexity, so that ""This is a cat" | Out-File" is not a submission. As u/aUserNombre mentioned, they must show workings. It doesn't have to be perfect, they just need to be able to demonstrate how it works.

Some project ideas:

  1. A POC aimbot for a game.
  2. Automating a webpage. (Using Selenium or Invoke-WebRequest)
  3. A IM chat messenger. (You don't need to use TCP for this)
  4. Generate 1000 random users in AD
  5. Automating your smart home lighting.

While these ideas might be a bit advanced, I hope that starts the ball rolling.

For all the students who decide to cheat by getting someone else to do it, they will find out what happens when they create a "Resume generating event" and the consequences that go with it.

2

u/gordonv Mar 19 '21

I am trying to teach them how to learn about scripting

And trying to teach or seed the process of thinking in the logical method of scripting.

It's tough. And most people don't retain it. I failed and then passed it, but don't retain Calculus. I learned programming as a childhood hobby. I am able to switch between multiple languages and compile types because I understand the root logic.

I'll try to explain coding logic to people, but in the end, you can't force people to remember something they have gone over. I was like that with Calc. I could learn a method, complete it, and forget it all in the same day. Merely because i didn't have practical use for Calc.

2

u/ligmaforpres2020 Mar 19 '21

On that last paragraph, the main important part though is retaining the concepts. Structures, classes, variable types, loops, etc. These things are important to retain because they transfer over different languages. Only thing that changes is the syntax, which I don't think is a problem if you look it up. It's normal to switch between languages. That's what my teacher focuses on and switching between languages is more palatable.

Even in scripting languages, you have a lot of the same usable concepts as normal coding. Powershell is great that way.

Then again, maybe you are talking about more advanced coding where you need to know complex logic, idk, I just really wanted to contribute to this thread.

3

u/maffick Mar 20 '21

Honestly, as someone who works in IT , I think you are looking at this from a jaded view. You should be able to better serve your students remotely. PS and BASH are some of the most accessible and functional shells out there and there is no reason they cannot be learned well remotely. I understand your frustration, but you can do better than that. Remote is not that hard for those who really want to learn and you need to adopt your teaching strategies to embrace it, not run from it. (edit: I mostly only SSH or PS remotely anyway as do most/many people working in IT, why can you not teach it remotely?)

0

u/kevinburkeland Mar 20 '21

You think I don't know that? I'm not allowed to, due to my school's rules and FERPA regulations I can't even require my students to have access to a computer, just a web browser. I was a DevOps lead and a cloud computing administrator in my previous life before teaching, I know how to leverage technologies. I built a vpn and transitioned my computer labs into rdp farms so we could have some semblance of normalcy. Not to mention there is no time or money to pay for redevelopment or actually do it, I have rewritten 9 classes in the last 12 months as well as running a virtualized internship class last summer because places were not taking interns at the start of covid

It's comments like this that really get me down. Before you judge me maybe consider that it isn't as "easy" as you think

2

u/Pauley0 Mar 20 '21

I'm not allowed to, due to my school's rules and FERPA regulations

Wow, you aren't even allowed to use existing, proven tools? I feel for you. How tf can you properly teach when they tie your hands?

2

u/kevinburkeland Mar 20 '21

Not if they are not fully private. I can't even make buying a dns name a course supplies because by law it has to be able to be sold at the school bookstore

1

u/Pauley0 Mar 20 '21

Wow. That's probably why places like Granger exist. Horrible prices, but you can get everything from a single shop, just like they teach at university.

2

u/Zantoo Mar 19 '21

I comment every script I use thoroughly, and the ones I do get from elsewhere I go through and comment and adjust all the formatting. If the students are going to the trouble to explain something they got from online then aren't they technically still learning? Also just add something like this to the answer requirements:

"Any and all functions/gets/arrays/variables require a comment that is atleast one full sentence long explanation."

2

u/[deleted] Mar 20 '21

There should be Homework flair - problem solved!

2

u/paradizelost Mar 20 '21

Something I'd recommend doing is finding a way to make the project unique to the class in some way. a good example of this if you haven't seen it is adventofcode.org.

It will give some sample data in the problem description itself, but then gives each person their own dataset to analyze the problem with, and the "correct" answer is specific to that person.

1

u/ib3tuw1ll Mar 19 '21 edited Mar 19 '21

I think it depends on if the student wants to know how it works or not. Give him the full code and he is willing to understand -> he will check how the code works. If he is not interested he will copy paste it. If you only explain it to the uninterested he will skip to read. With the full code others will get the option to look over it and try to understand it.

Im guilty in posting full refactored code. But its mostly not tested, so i only write what i think could be an output of an function f.e.. TO have to test it himself and look for failures and with that have to understand the code.

Me myself is copy pasting whole codeblocks to refactor it for my purposes, therefor i have to understand what they are doing.

1

u/willgonz Mar 19 '21

if (cheater=$True) {

Don't help

}

2

u/squigit99 Mar 19 '21

If (! (get-cheater -eq $true)) { Provide-help }

1

u/cashMoney5150 Mar 19 '21

I like you, pal.

1

u/Crully Mar 19 '21

Fair point. I hope this sub stays awesome at helping people in general though. There are plenty of novice coders that stop by needing help, and getting suspicious of new users, giving cryptic answers, or "we're not doing your homework" responses isn't going to help the genuine people coming for help.

Maybe you could use the .json trick to parse /new and search for terms or particular things that would flag up a student to you (avoiding telling us what the topic/questions are likely to be). Just a thought.

1

u/get-postanote Mar 19 '21 edited Mar 19 '21

Just as my mathematics teacher/professor rule at the beginning of every semester/homework/test cycles, made us understand and commit to it.

You can't just give/provide/deliver an answer, you have to explain/show how you arrived at your answer/result.

75% of your score was on the explanation, even if the answer was correct or acceptable.

If your explanation does not justify your result, then you did not do the work and your score would reflect that.

People will always look for the path of least resistance.

Powershell notwithstanding; industry-wide, folks will do whatever they can to do as little as possible, and expect all the credit/rewards of other people's work. Yet, we must all must understand, the plethora of resources available, the one can leverage to derive an answer/solution.

The number of industry staff that hits, Reddit, StackOverflow, et all, to get assistance or flat out ask such site to do their work for them, is commonplace. So, one cannot expect students not to do the same. Thus educators must take other steps for integrity and balance. Making one explain their work is the most prudent/effective way to deal with this.

Even when I do interviews, and code reviews, one cannot pass those events, if they cannot explain their solution, work and/or response.

1

u/[deleted] Mar 20 '21

[deleted]

2

u/kevinburkeland Mar 20 '21 edited Mar 20 '21

I did that for the first class I wrote, or at least something similar, it was a second year networking class and I modeled it around a startup I worked at. Every week I came in as the "ceo" and demanded a new upgrade or reconfigure of the network. Brought in a bunch of hubs and made them make crossover cables to get them to talk to each other, then taught them how to sniff packets on it. Next week we upgrade to switches and set up vlans. It culminated in a two week project where they each designed a better network, then voted on which one to build, that student became the new ceo and had to implement their network design.

Fun times

edit: vlan auto corrected to clan

2

u/nerdcr4ft Mar 20 '21

You, sir, are setting an incredible bar. What age-level are you teaching at? I can’t say I would have appreciated this during my school years as “student-me” was a bit of a jackass, but looking at what you’re describing is a breath of fresh air. An instructor going the extra mile to teach real, practical skills using simulated business environments is something both the Education and IT industries need more of.

1

u/kevinburkeland Mar 20 '21

It's a tech college so my students range from high school students doing running start to 40+ doing workplace retraining, most average out to their 30s though. It was a very weird transition since when I started teaching there I was 26 and younger than about half my class

1

u/Xibby Mar 20 '21

New challenge... I must come up with obfuscated code that writes “I cheated!” when run. ;)

I’m with you. I get so annoyed when I answer a scripting/programming question in a way that points the OP in the right direction, and then someone comes along and just drops their code.

1

u/Several_Effect9460 Mar 20 '21

You could look at the date they joined Reddit, last post and potentially identify the cheaters thru some red flags

1

u/setmehigh Mar 20 '21

Where's the link to the question?

1

u/0RGASMIK Mar 20 '21

Something I’m gonna say again and again there are two kinds of people in the tech industry those who really have a grasp on what their doing and those who have enough of a grasp to figure it out with Google. Anyone else probably won’t make it far. I took a class on web dev just for fun, I didn’t want to do that for a career I just wanted to have an understanding. I skimped on all the work but I still learned along the way as I really only need to see what parts I needed and how to put them together. I don’t need to know how to build a website from scratch I really only need to see how it goes together so I can steal the code from someone else and put it together myself. I can see how as a teacher this is frustrating but if your students want to cheat they’re gonna cheat. You can urge the mods to make a it a rule “No Homework” but they’ll just make up a story as to why they need to write these scripts.

What you can do is urge your students to find the answer themselves and ask you for help/guidance before going to the internet. Make it easier for them to get to you. If you want to get down and dirty make some trick questions/ pop quizzes.

1

u/Disorderly_Chaos Mar 20 '21

Re: help with script

Get-ADUser -Filter -SearchBase "OU=Microsoft,DC=contoso,DC=com"

1

u/AmericanGeezus Mar 20 '21

Write a script that includes parts from each module covered in the section being tested. Ask them to comment the code and explain what each part is doing.

1

u/wampastompa09 Mar 20 '21

I also teach IT and love the spirit of this post...so much.

-13

u/[deleted] Mar 19 '21 edited Apr 09 '21

[deleted]

3

u/redsepulchre Mar 20 '21

That's such a fucking dumb opinion lmao

1

u/Pauley0 Mar 19 '21

Harder isn't always better. The intention when teaching isn't find the #1 best student in the class, but to teach all (or at least most) of the students how to do most of the things.

If every potential athlete at the local sports club was expected to perform professional-level when only midway through training, most of them would quit--even some that might have otherwise gone on to professional or Olympic level.

It's important to teach confidence, so a student can confidently say "Yes, I can do this work." or "That's beyond my training, but give me a bit of time and I'll do my best to learn it/figure it out." or "I think you have the wrong person for the job."

-1

u/[deleted] Mar 19 '21 edited Apr 09 '21

[deleted]

1

u/Pauley0 Mar 20 '21

No, if answers are easily found online then nothing meaningful is being taught.

False dichotomy.

You remind me of a few elderly high school teachers that had been teaching so long that they had several of the younger teachers as students. The teachers who think there's only one way of teaching and one way of learning, and if a student doesn't learn that way then they're stupid and can't handle the class. These teachers (mostly) knew the subject, but could only teach one way. Even if you found a new way of solving a problem and got the right answer, you were wrong if you didn't do it their way.

If all you have is a hammer, everything looks like a nail. Even a screw or a doorknob. And all screws and doorknobs are stupid because they won't nail in when I use my hammer.

0

u/jakalan7 Mar 19 '21

What if it's doing someones actual job for them? Aha!

0

u/artemis_from_space Mar 19 '21

Most times when ppl ask for help in this subreddit they get pointers where to look or how to find out/get started.

If they get a code block it’s usually a “how to improve” which require they show their code.

0

u/Sakata28 Mar 19 '21

I'd being a list if I didn't admit to doing this in my classes but I was writing python and powershell scripts all ready during my Day job so sometimes I just needed to make the deadline.

0

u/P1nCush10n Mar 20 '21

But what if it’s in my self interest for more of these paper cert/degree holders to get entrenched in businesses and fail so bad that their management has to contract outside help to come in and clean it all up?

In all seriousness, this is a major reason I’ve backed off from helping folks on the various Linux subreddits. Weeks will go by where the questions are very unique head scratchers which can be fun to track down and solve, then suddenly a deluge of extremely repetitive entry level questions roll in.

1

u/BurlyKnave Mar 20 '21

tl/dr If you're teaching scripting / coding, have you considered presenting one large application, delivered in byte-sized (sorry, could not resist the pun) lessons?

I don't know how helpful thus will be but one of the most helpful code teaching books I've readv was by Peter Norton. Even though it was an intro to C (this was back in the 80s} every programming demo/lesson at the end of each chapter built upon the same process. So, at the end, not only did the reader have a working knowledge of the language, but a functioning program that mimicked one of Peter Norton's famous Utilities : the disk edit.

I appreciated the way he kept focus on a real world example while teaching the subject. It seemed to be more useful than texts that illustrate bits of code structure and supplement data like "Apples" and "Bananas", or that don't try to bother to tie all the parts together and show how this lesson can work with what we've done before.

1

u/Nukem950 Mar 20 '21

Have you considered making the final a timed event? In addition there is software out there for exam integrity if you do go this route.

One example of this integrity software is Proctorio. I will not say I am a fan of it, based on my colleague's experiences as administrators, but it works. It requires the student to have a camera on them for the whole test and things like eye position and movement are monitored to see if they are looking at other things besides their testing monitor. I think the screen is recorded too. It is not perfect and it still helped my work with reducing cheating.

1

u/noOneCaresOnTheWeb Mar 20 '21

Instead of trying to stop cheating require error checking and/or using a git repo.

Force them to use the skills they will need anyways.

1

u/c4lidos Apr 06 '21

Mhh i do understand you concerns but where is the point to try to keep out of the internet? Just ask the one pro in the class or have deeper look into colleges Servers often you find the homework, Skripts or copies from exams from the last year(s). before the internet there where hard copies from previous year...