Pre Meeting (7:20):
Hot Kosher Pizza, Beer and more
First hour (7:30):
Title: The Differences between Programming Languages, And The Underlying Implementation On The Machine Level
BY: Yoel Halberstam Sr Software Engineer, DBA and Web Admin
Description: Many of us are frustrated when dealing with a language outside the scope of one’s experience, this is especially true when it comes down to differences that are merely a result from the underlying implementation or ideology.
Topics: See on the bottom of the page some topics and interesting questions that we hope to discuss (should time permit), we will also try to visualize and show the concepts as much as possible.
Second Hour (8:30):
Title: The Foundation of the Group
Description: We need to discuss and setup a charter on how the group will operate, what is the target audience, and how we can get the maximum benefit out of it.
1) Define YIDLUG:
1. What is the target of the group? What audience do we target? How will we invite new members? Who is accepted as a member and how? Ideas include the following
A) Create multiple meetings like a beginners meeting, a developers meeting, a joined Project meeting,
B) Create a large event for all Yiddish Speaking Professionals in the tech industry (from cabling to high level coder and all in between)
2. Who is responsible for what and how decisions are made, Financial, finding sponsors, scheduling of meetings/events, Meeting locations.
2) YIDLUG helpful Features:
1. We might also want to discuss and define some helpful feature to include in YIDLUG and some Joined Projects, such as:
A) Create a website for the group, (move off meetup.com) to schedule events create mailing lists, forums, voting and polling area, it should be open source based and built in collaboration, so we can all add functions and features.
B) We might create a shared library, (within the abovementioned website or not) where anyone within the group will be able to share their (legally owned) technical eBook, video, or audio, as well as links to great sites. we might even take this a step further by setting up a search engine to search the resources, or even within books.
C) We might do a wiki, on which users will be able to write down specific tips and tricks and workarounds for a specific technology, this will help others struggling with the same technology, while it will also be a benefit for the writer itself in a future time when he want to come back to this technology, or do this in the way of forum view so it can be discussions around topics or a combination of a wikified forum (this is a idea a have not seen yet).
D) We might record the meetings, and upload it somewhere to be able to view it in a later time, and we can also write down the content of the meeting in the wiki.
E) We will discuss the idea of collaborating on a software projects, we will define a system how to decide on ideas, how to vote on them, how to setup the collaboration, and how to keep the projects moving.
3) Define YIDLUG Developers Meetings:
1. While the meeting might be just a gathering, we of course want more of it to enhance our knowledge.
2. We probably want the meetings (or at last a main part of it) devoted to info sessions, in which a speaker will present knowledge in specific areas.
3. We need to define how to select the topics and speakers, we might use a system in which users can present topics for the meeting, and all users will then vote on it, if we take this route then we have to define the voting system.
4. Also we can allow users to present specific relevant questions in general areas, on which all users might be able to answer, if so we need to define which questions and problems we allow.
5. For example how can a question be submitted before, and all users will then vote before if to allow the question, and if so every user should do research on it, and we will devote 15 minutes at the meeting to discuss this question or problem.
Some Topics We Hope To Discuss By The Presentation (The First Hour):
- In which language is "true" 0 and "false" 1? And why?
- Why is "True" in VB = -1?
- In vb "if 2 AND 4"will result in true or false?
- In which language is better to write "if(20==myvar)" than "if(myvar==20)? And why?
- Why does in vb the AND and OR not short circuit? And why does it in other languages?
- What is a string?
- Why do many language consider a string as immutable? And why is it considered a reference type in most languages?
- Why does C not allow a switch case on a string?
- What means the following string? L"some string"? And what does TEXT("some string") means?
- How to make a string split on multiple lines?
- How is it possible to have a string in code without any quotes at all?
- What is the difference between single quotes and double?
- How to embed a variable in a string?
- What is null, and how is it represented behind the scenes? And why only for reference types?
- How is a null in programming different than Null in a database? And why? And where can the db null affect the code null?
- In which language is Null uppercase only? And why?
- What is NaN? How do we get it? How is it different from null? Is "Nan==Nan" true or false? Is "Nan!=Nan" true or false?
- How does a program looks on the machine level?
- What is the stack? And what is used for?
- What is value created on the stack? And what is created on the heap?
- What is garbage collection? And how do different languages handle it?
5) Functions and scope
- In which languages can a function be executed without being called in any way?
- In which language can a function return a number only?
- Which language can have a full blown function without a function body at all?
- In which language is a global variable by default not accessible to a function? And in which language are local variables by default global?
- Which type of function is the original code available at run time?
- What is pass by value and pass by reference on a reference type? And what about a string?
- In which language is the output always the same if the input is the same?
- What is the difference between a function and a subroutine? And why?
- In which language a function with no arguments is actually a constant?
6) Loops and scope
- In which language variables in a loop will stay with their original value? And how to bypass it?
- Variables declared in the body of the body of the loop are accessible outside the loop? In which language?
- Is "for( int i=0"etc. valid? And where is i visible?
- What does "for(;;)" do?
- In which language there is no continue or break statement, and how to work around it?
- What is the difference between a pointer, reference, and handle?
- Which of the following is valid? "a=b=c=d" and "a=b=c"? And what do they mean?
- What is a LValue and what is a RValue? And which languages have different syntax for them
- What is the difference between a primitive type and a value type?
- Can a cast from a smaller type (ex. a byte) to a larger datatype (ex. Int) result in data loss? If yes why does is an explicit cast not required?
- In which language when passing an array to a function one also has to pass the length? And why?
- Is there a difference between ; and ;;?
- What does "esac" mean?
- What is the difference between functional and imperative languages?