#and the haskell community especially
Explore tagged Tumblr posts
shadow-bender · 1 year ago
Text
Tumblr media Tumblr media
Please pray and raise awareness for Cole Brings Plenty, a Lakota actor and student. He was found on april 5th. This is such an awful and cruel act of violence, im having a hard time finding the words.
April 8th Rising Hearts has organized Braids for Cole, so please wear your hair in braids and bring awareness so that Cole and his family can get justice.
*edited to correct information*
3K notes · View notes
technonews-biz · 8 months ago
Text
Programming languages for AI that are relevant to learn in 2024
Tumblr media
Artificial intelligence is a great career opportunity, because not only are the number of AI jobs skyrocketing, but there is also a demand for AI skills in many technical professions. To get started, you need to learn one of the popular programming languages. But which one is best for AI development? There are several popular programming languages for artificial intelligence. A good programming language for artificial intelligence should be easy to learn, easy to read, and easy to use. We take a look at the best programming languages for artificial intelligence and how you can get started today. 
Why Python?
For most programmers, the best programming language for artificial intelligence is Python. The other big competitors are Java, C++, and JavaScript, but Python is probably the best language for artificial intelligence development. Python is very flexible and offers many features that improve the quality of life and ease of use. You don't need to be a programmer to intuitively understand Python. This low threshold of entry is very important. In fact, many data scientists and analysts using artificial intelligence don't have programming skills. They are well integrated. Many AI frameworks, libraries, and platforms are already developed in Python and available as open source projects, so developers don't need to reinvent the wheel. These frameworks are well documented. Learning Python is much easier, with many videos, tutorials, and projects available online. For less popular languages, there may not be as many examples.
Simplicity and readability. Python has very readable and concise code, especially compared to languages like Java. Python can run on almost any platform, from Windows to Unix. Because it is an interpreted language, it does not require compilation. Also, Python has an extensive library for data visualization, which is important for artificial intelligence development. Data scientists can use libraries such as Matplotlib to create graphs. Many companies are hiring artificial intelligence programmers who use Python. According to Payscale, machine learning engineers proficient in Python will earn an average salary of 151 178 dollars in 2025. Python's biggest drawback is speed, as it is an interpreted language, but for AI and machine learning applications, fast development is often more important than pure performance.
Tumblr media
Of course, other languages can be used for AI. In fact, any language can be used for AI programming, but some languages are easier to use than others. Let's take a look at some other languages that are well suited for AI programming. 
Java: This is a popular general purpose language with a large community of programmers. Since it is a statically typed language, bugs are detected early and programs run fast. The disadvantage of Java is that it is cumbersome and difficult to learn. It has few high quality features and programmers have to do a lot of manual work.
Julia: It is designed for efficient numerical computations and supports machine learning well. Julia is a relatively new language and does not have much community support. Learning this language can be challenging.
Haskell: A functional programming language that emphasizes code correctness. While it can be used to develop artificial intelligence, it is most often used in education and research. Haskell can be a difficult language to learn and is a specialized language that can be very confusing.
Lisp: Lisp has been used in artificial intelligence for many years and is known for its flexibility and symbolic logic, but is a difficult language to read and write and has a small community of programmers.
R: A popular statistical programming language among computer scientists that integrates well with other languages and has many packages. It is ideal for artificial intelligence, which requires efficient data processing. R is slow to process data, has a complex learning curve, and has no support.
JavaScript: A popular language for web development. Developers use JavaScript in machine learning libraries. JavaScript is more complex and harder to learn than Python and more difficult than other programming languages.
C++: A fast and powerful language that is very popular among game developers. It is well supported, well documented, versatile and very powerful. C++ is difficult to learn and has many poor features. Programmers have to do a lot of manual work.
Tumblr media
Conclusion
Suppose you know one of the above-mentioned AI programming languages. In that case, developing AI applications in one of these languages is easier than learning a new one. After all, the most appropriate AI language for you is also the easiest to learn. A good programmer can write artificial intelligence in almost any programming language. The only question is how complex the process will be. The best programming language for AI is Python. It is easy to learn and has a large community of programmers. Java is also a good choice, but it is more difficult to learn. If you are just starting to learn programming for AI, Python has many advantages. You can start developing real-world applications right away. On the other hand, if you are fluent in Java or C++, you can create great AI applications in these languages.
0 notes
digitalmarketing2024dm · 10 months ago
Text
How Do You Choose the Right Programming Language for Your Project's Success?
Tumblr media
Selecting the right programming language is one of the most critical decisions you'll make when starting a new software project. The language you choose can significantly impact the project's development speed, scalability, and long-term maintainability. But with so many languages to choose from, how do you know which one is the best fit for your specific needs? Consulting expert Software Development Services can provide valuable insights and guidance during this crucial decision-making process. In this in-depth guide, we'll explore the key factors to consider when choosing a programming language to ensure your project’s success.
For businesses looking to navigate the complexities of software development, professional guidance can make all the difference. The Software Development Services offered by Keach Agency provide expert insights and support, helping you make informed decisions that align with your project goals.
1. Understand the Project Requirements
Before diving into the specifics of programming languages, it's essential to have a clear understanding of your project's requirements. Different languages excel at different tasks, so your choice should align with the specific goals of your project.
Type of Application: Is it a web application, mobile app, desktop software, or an embedded system? For instance, JavaScript is the go-to language for web development, while Swift is preferred for iOS mobile apps.
Performance Needs: Does your application need to handle high-performance tasks, such as real-time data processing or complex calculations? In such cases, languages like C++ or Rust may be more suitable due to their speed and efficiency.
Scalability: Consider the potential growth of your application. If you expect to scale significantly, choosing a language known for its scalability, like Python or Java, might be a wise decision.
2. Evaluate the Learning Curve and Community Support
The learning curve of a programming language can greatly affect the development timeline, especially if your team is unfamiliar with it. Additionally, community support plays a vital role in problem-solving and access to resources.
Learning Curve: Languages like Python are known for their readability and ease of use, making them ideal for beginners. On the other hand, languages like Haskell or Scala, while powerful, have steeper learning curves.
Community and Ecosystem: A strong community means more libraries, frameworks, and tools to help speed up development. For instance, JavaScript has a vast ecosystem with countless libraries and frameworks, making it easier to find solutions to common problems. According to the 2023 Stack Overflow Developer Survey, JavaScript continues to be the most popular language among developers, with a strong community backing.
3. Consider Future Maintenance and Updates
Choosing a language that is actively maintained and updated is crucial for the long-term success of your project. A language that is well-supported will have regular updates, patches, and a thriving community contributing to its growth.
Longevity: Established languages like Java, C#, and Python have been around for decades and continue to evolve. They offer stability and a wealth of resources for developers.
Backward Compatibility: Ensure the language you choose supports backward compatibility to avoid future headaches during updates or when integrating new features.
4. Assess the Available Development Tools and Frameworks
The tools and frameworks available for a programming language can significantly speed up the development process and enhance the quality of the final product.
Development Environment: Integrated Development Environments (IDEs) like PyCharm for Python or Visual Studio for C# can greatly enhance productivity by offering features like code completion, debugging tools, and version control integration.
Frameworks: Robust frameworks like Django for Python, Spring for Java, or Angular for JavaScript can help streamline the development process by providing pre-built components and structure to your code.
5. Examine the Cost and Availability of Developers
The availability of developers proficient in a particular language can impact both the cost and timeline of your project.
Developer Availability: Some languages have a larger pool of developers, making it easier to hire talent. For example, Python and JavaScript are among the most popular languages, ensuring a broad availability of skilled developers.
Cost Implications: The cost of hiring developers can vary significantly depending on the language. Developers skilled in niche languages or those with specialized knowledge in high-demand languages like Go or Rust may command higher salaries.
6. Look at Real-World Use Cases and Industry Trends
Analyzing how different programming languages are used in the real world can provide valuable insights into their strengths and weaknesses.
Industry Adoption: Certain languages are favored in specific industries. For example, R and Python are widely used in data science and machine learning, while Java and C# are predominant in enterprise software development.
Case Studies: Look for case studies or examples of successful projects built with the language you’re considering. This can help you understand how the language performs in similar scenarios.
7. Consider Security and Compliance Requirements
Security is a critical consideration, especially for applications handling sensitive data. Some languages offer built-in security features that can help protect your application from common vulnerabilities.
Security Features: Languages like Java and C# come with strong security features and tools, making them suitable for applications requiring high levels of security, such as financial or healthcare systems.
Compliance: Depending on your industry, you may need to adhere to specific compliance standards (e.g., GDPR, HIPAA). Ensure the language you choose supports the necessary security measures and compliance requirements.
Conclusion
Choosing the right programming language is a complex decision that requires careful consideration of various factors, including project requirements, learning curve, community support, future maintenance, available tools, cost, industry trends, and security needs. Making the right choice can significantly impact the success of your project, influencing everything from development speed to scalability and long-term maintainability.
If you’re unsure which programming language is the best fit for your project, seeking expert advice can be invaluable. The Software Development Services offered by Keach Agency can provide the guidance you need to make informed decisions and set your project up for success.
0 notes
javacodingtips · 2 years ago
Text
What is the hardest programming language?
Tumblr media
In the ever-evolving world of software development, programmers often debate which programming language is the hardest to learn and master. While every language has its own challenges and learning curves, some are universally considered more complex due to their syntax, abstraction level, memory management, or paradigm.
This article explores some of the most difficult programming languages, comparing them to Java—a widely-used, object-oriented language known for its balance of complexity and usability. Whether you're a beginner looking to start your programming journey or an experienced Java developer exploring new horizons, understanding the hardest languages can give you valuable insights into the broader programming landscape.
Understanding “Hard” in Programming
Before naming the hardest language, let’s clarify what “hard” really means in this context. A language may be considered difficult based on:
Complex syntax
Low-level memory manipulation
Steep learning curve
Lack of documentation or community support
Unfamiliar paradigms (e.g., functional or logic programming)
What might be difficult for one programmer could be intuitive for another. However, there are languages that most developers agree are particularly challenging.
The Hardest Programming Languages (Compared with Java)
1. Assembly Language
Assembly is one of the lowest-level programming languages still in use. It interacts directly with a computer’s hardware, offering almost no abstraction.
Why It’s Hard:
Extremely detailed and verbose
Requires deep knowledge of computer architecture
No error handling or built-in functions
Compared to Java: Java offers high-level abstractions, garbage collection, and built-in libraries, making it vastly easier to read, write, and maintain than Assembly.
2. C and C++
While C is considered powerful for system-level programming, it’s also notorious for its manual memory management and pointer arithmetic.
Why It’s Hard:
Requires manual memory allocation and deallocation
High risk of segmentation faults and memory leaks
Complex syntax (especially in C++)
Compared to Java: Java handles memory automatically with garbage collection and has a cleaner object-oriented model, making it more approachable for beginners.
3. Haskell
Haskell is a purely functional programming language with a completely different mindset from imperative languages like Java.
Why It’s Hard:
Lazy evaluation model
Complex type system
Abstract mathematical concepts
Compared to Java: Java is imperative and object-oriented, which aligns more naturally with how humans solve problems step-by-step. Haskell requires a paradigm shift.
4. Prolog
Prolog is a logic programming language used for AI and computational linguistics.
Why It’s Hard:
Uses declarative logic rather than sequential code
Requires a strong grasp of formal logic
Backtracking and unification can be hard to debug
Compared to Java: Java’s control flow, error handling, and object-oriented design are more straightforward and intuitive for mainstream programming tasks.
5. Malbolge (For Curiosity!)
Malbolge is widely considered the hardest programming language, but it was intentionally designed to be nearly impossible to use.
Why It’s Hard:
Self-altering code
Extremely limited documentation
No practical use
Compared to Java: Java is engineered for readability and maintainability—Malbolge is the exact opposite.
Why Java Is Often a Preferred Language?
Despite some complexity, Java is regarded as one of the best-balanced programming languages. It finds a middle ground between simplicity and power:
Readable syntax (compared to C or Assembly)
Object-oriented structure makes it scalable
Automatic memory management through garbage collection
Robust error handling and exception framework
Massive ecosystem of libraries and frameworks
Strong community and documentation support
These features make Java an ideal starting point for learners and a powerful tool for professionals building large-scale applications.
Who Should Still Learn These Hard Languages?
Even if they’re not beginner-friendly, hard programming languages have their own place and value:
C/C++ for system-level programming or embedded systems
Assembly for hardware interaction and performance optimization
Haskell for academic research or advanced functional programming
Prolog for AI and natural language processing
Knowing Java can act as a strong foundation, making the transition into harder languages easier as your career progresses.
Conclusion: Hardest Isn’t Always Best
In the end, the hardest programming language depends on what you’re trying to achieve. Languages like Assembly, Haskell, and Prolog may be more difficult than Java, but they serve specific purposes where they shine.
Java remains one of the most versatile, developer-friendly, and industry-relevant languages. If you’ve already learned Java or plan to start with it, you’ve chosen a language that strikes a great balance between power and accessibility.
While it's admirable to challenge yourself with harder languages, always remember: write code that solves problems, not just code that looks hard.
0 notes
codingclassesinchandigarh · 2 years ago
Text
What is programming language and its types?
Tumblr media
In today’s digital age, computers have become an integral part of almost every industry—from healthcare and finance to entertainment and education. But how do these machines understand what we want them to do? The answer lies in programming languages. These languages serve as the medium through which we communicate with computers.
In this article, we’ll explore what programming languages are, their importance, and the various types that exist, each designed for specific purposes.
What Is a Programming Language?
A programming language is a formal set of instructions used to produce a wide range of outputs, such as software applications, websites, games, and more. It allows developers to write code that a computer can understand and execute.
These languages consist of syntax (structure) and semantics (meaning) that help define the behavior of software programs.
Why Programming Languages Matter:
They bridge the gap between human logic and machine understanding.
They enable automation, problem-solving, and innovation.
They form the foundation for technologies like AI, web development, and mobile apps.
Main Types of Programming Languages
Programming languages are generally classified based on their level of abstraction and application domain. Below are the primary categories:
1. Low-Level Languages
These are languages that interact closely with the hardware. They are fast and efficient but difficult to learn.
a. Machine Language
Written in binary code (0s and 1s)
Directly understood by the computer's CPU
Extremely difficult for humans to read or write
b. Assembly Language
Uses mnemonic codes (like MOV, ADD)
Requires an assembler to convert into machine code
Offers more control but still complex to use
2. High-Level Languages
These languages are designed to be human-readable and abstract away hardware details.
Examples:
Python: Known for simplicity and readability
Java: Popular for enterprise applications
C++: Offers high performance with object-oriented features
JavaScript: Essential for web development
High-level languages are widely used because they are easier to learn and maintain, even though they may not offer the same performance as low-level languages.
3. Object-Oriented Programming (OOP) Languages
OOP languages revolve around the concept of objects—entities that contain both data and methods.
Features:
Encapsulation: Bundling data with methods
Inheritance: Reusing existing code
Polymorphism: Flexibility in code behavior
Examples:
Java
Python (supports both OOP and procedural)
C#
OOP makes software development more modular, reusable, and scalable.
4. Procedural Programming Languages
These languages follow a step-by-step procedural approach to execute tasks.
Characteristics:
Focus on procedures or routines
Uses loops, conditionals, and sequences
Easier for beginners to grasp logical flow
Examples:
C
Pascal
BASIC
These are often used in education and system-level programming.
5. Scripting Languages
Scripting languages are primarily used to automate tasks and control environments, especially in web development.
Common Uses:
Front-end and back-end web development
Automation scripts
Game development
Examples:
JavaScript
PHP
Python (also used as a scripting language)
Interestingly, many professionals today are expanding their digital skills. For instance, someone interested in both programming and content creation might look for courses like the Best Content writing course in Chandigarh, as tech and communication skills are increasingly interconnected in today’s job market.
6. Functional Programming Languages
These languages treat computation as the evaluation of mathematical functions and avoid changing state or mutable data.
Features:
Immutability
First-class functions
Recursion over loops
Examples:
Haskell
Scala
Erlang
They are ideal for applications requiring high levels of concurrency or mathematical calculations.
7. Markup Languages (Non-Procedural)
While not programming languages in the traditional sense, markup languages are essential for defining data structure and presentation.
Examples:
HTML: Structures content on the web
XML: Stores and transports data
Markdown: Formats text in plain text editors
These are usually used alongside scripting or programming languages.
Choosing the Right Language
The “best” language depends on your goals:
Web Development: JavaScript, HTML, CSS, PHP
App Development: Java, Kotlin, Swift
Data Science & AI: Python, R
System Programming: C, C++
Before choosing a programming language, consider the project requirements, community support, and your learning preferences.
Conclusion
Programming languages are the backbone of the digital world. Understanding what they are and how they are categorized can significantly ease your journey into software development. Whether you’re coding a mobile app, creating a website, or even pursuing the best content writing course in Chandigarh, having a basic understanding of programming languages adds immense value to your skillset.
With the right mindset and learning resources, anyone can master the logic and language behind the world’s most powerful technologies.
0 notes
ravenyenn19 · 2 years ago
Text
On Shadow & Bone S2…
So, I’ve been considering making a post like this for a bit & I figured now is the time. These are just my thoughts so if you disagree, disagree! That’s fine! Constructive discussion is encouraged! 🖤 (Spoilers for book & movie!!!)
So. Kaz Brekker (tv edition), is who I’ll be discussing in this micro essay, along with Inej (tv edition).
Since the first season aired, I’ve seen a ton of things online, people shouting “make Kaz more violent! He never should have said something so bold to Inej as “I need you.”!” I DISAGREE. Here’s why:
Kaz Brekker on the screen is clearly aged up, as is everyone else amongst the Crows. I agree with this choice whole heartedly as it makes more sense in the merging of events from S&B. It would be odd to have Alina, the Darkling, Zoya & everyone else in these situations as older characters serving in the Ravkan military etc and leave the Crows as adolescents. Now, if the Six of Crows books had been entirely stand alone and adapted in a show that also majorly targeted only young adults, it would make sense. However, Netflix’s aim was not to only target young people. Just as Leigh has said she feels “Six of Crows” is more adaptable to an older audience as well.
If Kaz had still been a kid, I think you’re right. He would not have been so bold. But he isn’t seventeen in the show. I think showing him as a more mature iteration of the character, it was wise to make him bolder. Inej, older as well, would not stick around for silence as an adult. I firmly believe this. She knows what she’s worth, and that is shown in the books as well. I think this would only be magnified with maturity- as it should be!
I don’t think if Kaz had been an adult in the books, and those around him also adults, his friends would have settled for nothing. I think because they were young & blinded by trauma, all of them had something lacking in terms of communication & personal self-worth for some reason or another. Therefore finding Kaz’s aloofness and “uncaring” nature more palatable; if only because of their own ages & experiences.
I also think the show HAD to make Kaz more vocal about his thoughts/feelings. If only slightly. This is due to such a large amount of the context for his character only being found in internal monologue in the books. In order to make Kaz real on the screen and not immediately dismissible as “bad” for what he says and does, they had to give both the audience & characters around him glimpses of his internal landscape. This is especially noticeable with Inej, but also Jesper.
In the show, they clearly hint that Jesper knows at least some of Kaz’s history with Pekka Rollins. (Jesper asks, “did he recognize you?” Kaz answers: “I’d be dead if he had”). Now, we don’t know yet if the show is altering any of Kaz’s backstory yet (as they have changed something already- his affiliation with the Dregs was not mentioned & therefore we don’t know if Per Haskell even exists in this version of events). I think this is clearly a nod to the fact that Kaz has grown up in this iteration and has not left Jesper in the dark- at least not entirely. I do not think Jesper knows the crucial part of Kaz’s history regarding his severe aversion to skin contact with others. This was hinted at when Jesper grabs Kaz’s sleeve at one point in Ketterdam and doesn’t notice the shock on Kaz’s face.
As far as the violent streak goes- I think the show gave him just enough in the first season. This is because the story line didn’t necessarily call for more as they were kidnapping Alina & fighting off against Grisha rather than rival gangs etc. I do hope to see more of Kaz’s abilities as well as the other Crows in season 2.
This is all to say, I think making Kaz Brekker a little more “vocal” on screen saves his character from being cast aside for those who have no context & didn’t read the books. Netflix aimed to make a show for all viewers, not just readers, and I for one am glad to see others finding these characters that mean so much to me in a new way. 🖤
Anyways, these are just humble thoughts from your local Kanej author 🖤 Tell me what you think! (Also DWOD will be updated tonight!)
25 notes · View notes
xiexiecaptain · 2 years ago
Text
Shadow & Bone rewatch live-commenting that was started on twitter and is being moved/continued here!
This is the post for EP 02: We Are All Someone’s Monster
[Episode 01 post] [Rewatch Commentary Links Masterpost]
((There WILL be spoilers mentioned for the books in the Grishaverse including the Crows duology & King of Scars duology! This is basically from the perspective of watching the show as someone who knows the books well.))
Tumblr media
This visual interpretation of the way each of the 1st trilogy books are opened and closed with "the boy and the girl" narration is such a great visual motif
Tumblr media Tumblr media
--
I love the bleached white streaky effect on the deck from the burst of light
Listen, I'm a writer more than a visual artist, so when people do great clever/interesting visual ways of communicating or interpreting things I'm so in awe
Tumblr media
--
CAN WE TALK ABOUT HOW COOL KAZ'S WATCH IS??
These are the sort of tiny worldbuilding details that I just want to rub all over my face
Tumblr media
--
This is a really interesting adaption change--that Kaz couldn't buy her indenture all at once like in the books. But since it seems like they cut Per Haskell, Kaz doesn't have that money to use for buy her contract and such
Tumblr media
The amount of trauma Inej must be dealing with on a regular basis, having to go back there is just unimaginable
Like it's one thing to be kept there by Heleen before Kaz bought her indenture. But to be able to leave and be out working for Kaz, but have to go BACK
Oof Inej is the strongest person in the whole series I s2g
--
Of course you can't fool the Wraith. 
She's got your number, Dirtyhands~
Tumblr media
--
you can just IMMEDIATELY see he regrets it 
His first instinct is to always make people feel expendable and keep them at arms length 
["He's not the only irreplaceable member of this crew, Kaz. You need me."
"I need your skills, Inej. That's not the same thing."]
Tumblr media Tumblr media Tumblr media
--
Ok the fact that he goes after her-!
I mean, think about how much it means that KAZ BREKKER takes the time/effort and concedes the emotional investment in her to grab his cane and walk after her?!?!
[I'd settle for an apology, she decided. Even if Kaz isn't sorry, he can pretend. He at least owes me his best imitation of a human being.]
Tumblr media Tumblr media Tumblr media Tumblr media
Listen I've been Kanej trash for almost 5 solid years now, y'all. The fact that I'm getting new material through this series is feeding me spiritually
--
Kirigan: Closer 
Alina: *teeny tiniest of steps* 
aLINA STARKOV-!
Tumblr media Tumblr media Tumblr media
--
Again, I really like the adaption changes they made--this time with the visual/physical externalization of the Grisha testing
In books, because of interiority and description, it works perfectly for it to be described as touching an arm and then that feeling of rushing to meet the touch. But for a visual medium, having to be something more physical and something easier to convey visually was a smart choice.
Tumblr media
But also to have the testing be as a response to sudden pain, like triggering a survival instinct, has lots of interesting things to say about the nature of Grisha power
Tumblr media
--
Man as much as I despise the Darkling, he's a very compelling and well-done antagonist and character.
Because you disagree with HOW he goes abt it, but you can understand WHY he does it. To me personally, that’s the kind of antagonist I really find fascinating--one you can sympathize with, who genuinely believes they’re making the hard choices to do good things but are misguided, misinformed, accidentally harmful, and causing harm that they justify. (Although there’s a lot to discuss about antagonists like that where then the overall narrative moralizes middle-road non-action in the face of oppression over revolutionary action ie Killmonger, but I digress).
But Ben Barns really kills it as the Darkling. Just pitch perfect, I mean this is 1000% the face of a man who has just found the final tool to start the work he's been planning for centuries.
Tumblr media
But I ESPECIALLY love when there are no clear cut black and white, no choices made that are easily entirely definable “right” or wrong” for the antagonist (nor the protagonist for that matter.) Make all the choices grey and make everything have collateral damage  (You can start to see why SoC is my personal favorite in the Grishaverse, huh?)
But the Darkling is a very good antagonist. Doesn’t tick all my personal boxes but he’s very well crafted. (Eerily over-charismatic antagonists are really enthralling to me especially because they mirror real-life “villains” in that many people who are easily charming can also be very manipulative.)
--
THE LOOK ON KAZ'S FACE WHEN PEKKA WALKS IN IM- 
[Kaz heard a roaring in his ears. As always, he experienced a strange kind of doubling when he looked at Rollins...]
Tumblr media
--
[The look that passed over the boy's face then had taken Rollins aback. It was hatred--pure, black, long simmering.]
Tumblr media Tumblr media
--
I literally hissed out loud when he took Kaz's cane how fucKING DARE YOU
--
Tumblr media
Good fucking luck, Rollins. Didn't turn out so well last time Ketterdam tried that
Tumblr media
[One glance at Kaz Brekker told him this was a creature who had spent too long in the dark--he'd brought something back with him when he'd crawled into the light.]
--
(( P.S. Yes I have the SoC books with me bc 
1. I'm the biggest nerd on the planet but 
2. It's really amazing to see how well they translated the character dynamics and emotions 
3. The books are some of the most quotable in the universe 
4. I don't own paper copies of the other ones))
--
[Kaz waited for acknowledgement--a smirk, a sneer, some spark of recognition. But Rollins' eyes passed right over him.]
Tumblr media Tumblr media
ITS JUST SO GOOD?!?!
I mean we’re seeing the Crows/Ketterdam folks in an entirely new plot, but the book quotes still fit flawlessly because the core of the characters and their dynamics have been translated to this adaption with such care and love for the source material!!!
--
Tumblr media Tumblr media
I mean, he's not entirely wrong
[The child he'd been had died. The fever had burned away every gentle thing inside him. Survival wasn't nearly as hard as he'd thought once he left decency behind.]
--
She knows him so fucking well!
Tumblr media
["Don't think I haven't noticed the way you go after him, Kaz."
"He's just another boss, one more Barrel thug."
"No, he isn't. When you go after other gangs, it's business. But with Pekka Rollins, it's personal."]
--
It is in this moment I am heavily reminded that you can easily interpret the books as supporting that Jesper has feelings/the hots for Kaz at the beginnings of the books
Tumblr media Tumblr media
--
JUST BURY ME IN TINY CULTURAL WORLDBUILDING DETAILS LIKE THIS
Tumblr media Tumblr media Tumblr media
--
The Conductor is another addition I freaking adore 
Of course some enterprising individual figured out their own way through the Fold and used it to make money (I mean also helping Grisha flee Ravka, but still, he's charging them so)
--
MY HEART 
I bet they feel like they just got each other back too, after thinking they were gonna be separated by the supply run through the fold 
OH MY BABIES
Tumblr media Tumblr media
--
fUCKING HELEEN VANHOUDEN THE EVIL BITCH 
On a weird side note, her voice has the exact same awful sickly sweet drawl as in the audiobooks and its just perfect for the exact type of abusive she is
Tumblr media
--
KazBrekker.exe has stopped working 
 (Also me. We live an Inej Ghafa appreciation life here in this household)
Tumblr media Tumblr media
--
Look at Inej's face. She thinks Heleen's sending her to a client 
I can't bear this 
She looks like she's trying so so hard to keep herself together
Tumblr media Tumblr media Tumblr media
--
The Komedie Brute costume revelers!! 
(at least I'm pretty sure that's what they're supposed to be)
Tumblr media Tumblr media
--
JESPER LLEWELLAN FAHEY (scolding, adoring)
Tumblr media Tumblr media
--
[He'd heard other members of the gang say she moved like a cat, but he suspected cats would sit attentively at her feet to learn her methods.]
Tumblr media Tumblr media
--
“OF COURSE, LOVE” I’M-
He’s so IMMEDIATELY ready to help her with whatever. OF COURSE, he says.
Bury me in their friendship
Tumblr media Tumblr media
I also really adore we get to see Inej struggling with not wanting to kill people. Cus in the book only vaguely mentioned about her having cried the night she killed someone for the first time and Kaz overheard her.
--
The unexpected gays have arrived!!
Tumblr media
--
The position of Grisha in Ravka is so interesting!
Because a lot of otkazat'sya see them as stuck up, thinking they're better than and getting preferential treatment.
But that’s only because the Darkling made it that way in response to Grisha literally being burned at the stake elsewhere
Tumblr media Tumblr media Tumblr media Tumblr media
In the books, so many of the Little Palace Grisha that Alina trains with have the outlook of "well, we have powers, we were scouted to be trained here because we're special, so obviously we're better than otkazat'sya."
But here, I think its important that they show that at least some of the Grisha realize that this tiny bubble of safety (via fear, rather than acceptance) because of the Ravkan government (the Darkling’s work) is the exception. And many of the 2nd Army Grisha aren't from Ravka originally, they fled their homelands for fear of being killed, experimented on, sold into servitude, etc.
Tumblr media Tumblr media Tumblr media
And while the Darkling has made it safer for Grisha who are recruited into the 2nd Army, the legacy of the Fold has also increased prejudice against Grisha among otkazat'sya and abroad..
I just really like this scene because of how it highlights the Grisha's very complex position
--
The fact that they developed Fjerdan to the point where they have characters speaking it is just *chef kiss*
(once again, idk how people who watch things without subtitles don't miss 80% of content even when its not literally translating dialogue for you, but that might just be my ADHD ass talking)
Tumblr media
--
I’m not even a little bit sorry
Tumblr media
--
ok but the horror on Jessie Mei Li's face is absolutely stunning
Tumblr media
--
WINKS SO HARD I STRAIN A MUSCLE 
Somewhere on the Geldstraat, Wylan Van Eck is sneezing
Tumblr media
--
The little thing of Kaz tensing up when Jesper grabs his coat and then staring at it pointedly
Oh man oh man oh man
Tumblr media Tumblr media
--
HHHHHH KAZ’S FACE
 ["Would you? Trust someone with that knowledge, with a secret that could destroy you?" 
Yes, thought Kaz without any hesitation. There's one person I would trust. One person I know would never use my weaknesses against me.]
Tumblr media Tumblr media
--
The most realistic of portrayal of horse riding in a fantasy show
Tumblr media
--
already lying through his gd teeth 
gIRL DUMP HIM
Tumblr media Tumblr media
--
"Oh, so what's the Darkling's, like, story arc?"
Tumblr media
--
I MEAN SHE'S NOT WRONG THO?
Tumblr media Tumblr media
(A side note, how interesting would it be if Alina actually wasn't the first sun summoner?)
--
Well, well, look who it is: Malyen "Tunnel Vision" Oretsev 
(I’m kidding, I really like show!Mal)
Tumblr media
--
WE LEAD A JESPER 👏 FAHEY 👏  APPRECIATION 👏 LIFE 👏
Tumblr media Tumblr media Tumblr media Tumblr media
--
So I literally wrote a [post back in the day] about how I thought since queer, trans, and gnc folks have historically been pushed to the margins of society and work/live in poor areas and have a high rate of sex work, you can bet your ass the Barrel has its fair share of trans/gnc residents
And its so cool to see this gestured to with Poppy?? 
I’m also glad they're miffed at Kaz for a financial deal rather than anything gender/sexuality related. Like the writers didn't stereotype Poppy's life
Tumblr media Tumblr media
Let's just get more of Poppy tbh? What's their story!?! I wanna see more of them and see them performing on stage and see them do some cool badass stuff???
Just more Poppy in season 2 please? 
We also need more people who call Kaz out on being a little scheming rat tbh
Tumblr media Tumblr media
--
I AM SO FUCKING INTERESTED ABOUT THIS?? 
They gave Inej a brother!!! Who was also stolen by slavers!! Which is a fascinating plot twist and I'm very excited to see how it adds to the story!!!
Tumblr media Tumblr media
--
I CANT BREATHE HER FACE- 
INEJ-!!!! 
Tumblr media Tumblr media Tumblr media Tumblr media
[She had to believe her Saints saw and understood the things she did to survive.]
Amita Suman is the one and only Inej Ghafa and we are so lucky to have herrrr
--
She's absolutely ready to believe he would choose profit over her never having to step foot in the Menagerie again 
It's heartbreaking but also like, yeah, Kaz, you built your reputation specifically so people would believe you capable of anything??
Tumblr media Tumblr media
--
The only people we have seen him let stand this close beside him so far in the show are Jesper and Inej and I have a Feelings about it 
He gets in people's faces for intimidation reasons, but the only one he’s gotten this close next to are them????
Tumblr media
--
THATS NOT AN ANSWER YOU MANIPULATIVE PIECE OF GARBAGE
Tumblr media Tumblr media
--
Change dot org petition to Give Alina Starkov a Fucking Hug
Tumblr media Tumblr media Tumblr media
--
🎵Doo-do-do-do-do 🎵 Definitely not about to desert the army to run off after my childhood friend 🎵  doo-do-do
Tumblr media
--
I fucking love these three's friendship so much. I’m so glad it had space in the show to get fleshed out and feel more real
Tumblr media Tumblr media Tumblr media
--
im fucking scREAMING
Tumblr media Tumblr media
[His mind had concocted a hundred schemes to bind her to him, to keep her in this city. But she'd spent enough of her life caged by debts and obligations.]
Tumblr media Tumblr media
--
And that’s the end of Ep 02! Hot damn hot damn!
--
Additional thoughts: 
Both visually and character-wise, this show is so gd diverse and it's just a pleasure 
And its diverse because the WORLD is diverse, not just for misguided ~diversity~ reasons
There are so many races and ethnicities, gender expressions, sexualities, body types, classes, dis/abilities on screen for the simple reason that all those people exist in the world, take part in major world events and in the stories of people's lives 
It's a fucking joy.
One of the things that endeared me to the SOC books right away (which I read first) was that in the first chapter where we meet our main characters, we already have two characters of color and a disabled character within this absolutely enthralling scene of the parlay with the Black Tips where those traits are not ignored but nor are they centered unnecessarily. They are integral to the characters and how they operate in the world, but they are never reduced to them. Everyone is complicated and textured and flawed and I just really fucking love Leigh's characters ok?
It's so wonderful we have a mixed-race main character (played by a mixed-race actress) 
 We have four mixed-race characters in the main/supporting cast: Alina, Mal, Jesper, & Zoya (though Jesper & Zoya’s backgrounds aren’t mentioned/explored in season 1)
We have a young man with a physical disability in the main cast who is portrayed to be one of the scariest people in his city 
We have five indisputably queer characters on screen in season 1: Jesper, Ivan, Fyedor, Nadia, Dima
We have heavy folks in main roles--Nina & Arken--portrayed as desirable and ingenious, both hero and turncoat
We have so many POCs it's useless to point them all out individually, which is a gift 
It all just feels like such a gift
-
[Episode 01 post] [Rewatch Commentary Links Masterpost]
6 notes · View notes
noredinktech · 4 years ago
Text
Haskell for the Elm Enthusiast
Many years ago NRI adopted Elm as a frontend language. We started small with a disposable proof of concept, and as the engineering team increasingly was bought into Elm being a much better developer experience than JavaScript more and more of our frontend development happened in Elm. Today almost all of our frontend is written in Elm.
Meanwhile, on the backend, we use Ruby on Rails. Rails has served us well and has supported amazing growth of our website, both in terms of the features it supports, and the number of students and teachers who use it. But we’ve come to miss some of the tools that make us so productive in Elm: Tools like custom types for modeling data, or the type checker and its helpful error messages, or the ease of writing (fast) tests.
A couple of years ago we started looking into Haskell as an alternative backend language that could bring to our backend some of the benefits we experience writing Elm in the frontend. Today some key parts of our backend code are written in Haskell. Over the years we’ve developed our style of writing Haskell, which can be described as very Elm-like (it’s also still changing!).
🌳 Why be Like Elm?
Elm is a small language with great error messages, great documentation, and a great community. Together these make Elm one of the nicest programming languages to learn. Participants in an ElmBridge event will go from knowing nothing of the language to writing a real application using Elm in 5 hours.
We have a huge amount of Elm code at NoRedInk, and it supports some pretty tricky UI work. Elm scales well to a growing and increasingly complicated codebase. The compiler stays fast and we don’t lose confidence in our ability to make changes to our code. You can learn more about our Elm story here.
��� Unboxing Haskell
Haskell shares a lot of the language features we like in Elm: Custom types to help us model our data. Pure functions and explicit side effects. Writing code without runtime exceptions (mostly).
When it comes to ease of learning, Haskell makes different trade-offs than Elm. The language is much bigger, especially when including the many optional language features that can be enabled. It’s entirely up to you whether you want to use these features in your code, but you’ll need to know about many of them if you want to make use of Haskell’s packages, documentation, and how-tos. Haskell’s compiler errors typically aren’t as helpful as Elm’s are. Finally, we’ve read many Haskell books and blog posts, but haven’t found anything getting us from knowing no Haskell to writing a real application in it that’s anywhere near as small and effective as the Elm Guide.
🏟️ When in Rome, Act Like a Babylonian
Many of the niceties we’re used to in Elm we get in Haskell too. But Haskell has many additional features, and each one we use adds to the list of things that an Elm programmer will need to learn. So instead we took a path that many in the Haskell community took before us: limit ourselves to a subset of the language.
There are many styles of writing Haskell, each with its own trade-offs. Examples include Protolude, RIO, the lens ecosystem, and many more. Our approach differs in being strongly inspired by Elm. So what does our Elm-inspired style of writing Haskell look like?
🍇 Low hanging fruit: the Elm standard library
Our earliest effort in making our Haskell code more Elm-like was porting the Elm standard library to Haskell. We’ve open-sourced this port as a library named nri-prelude. It contains Haskell counterparts of the Elm modules for working with Strings, Lists, Dicts, and more.
nri-prelude also includes a port of elm-test. It provides everything you need for writing unit tests and basic property tests.
Finally, it includes a GHC plugin that makes it so Haskell’s default Prelude (basically its standard library) behaves like Elm’s defaults. For example, it adds implicit qualified imports of some modules like List, similar to what Elm does.
🎚️ Effects and the Absence of The Elm Architecture
Elm is opinionated in supporting a single architecture for frontend applications, fittingly called The Elm Architecture. One of its nice qualities is that it forces a separation of application logic (all those conditionals and loops) and effects (things like talking to a database or getting the current time). We love using The Elm Architecture writing frontend applications, but don’t see a way to apply it 1:1 to backend development. In the F# community, they use the Elm Architecture for some backend features (see: When to use Elmish Bridge), but it’s not generally applicable. We’d still like to encourage that separation between application logic and effects though, having seen some of the effects of losing that distinction in our backend code. Read our other post Pufferfish, please scale the site! if you want to read more about this.
Out of many options we’re currently using the handle pattern for managing effects. For each type of effect, we create a Handler type (we added the extra r in a typo way back and it has stuck around. Sorry). We use this pattern across our libraries for talking to outside systems: nri-postgresql, nri-http, nri-redis, and nri-kafka.
Without The Elm Architecture, we depend heavily on chaining permutations through a stateful Task type. This feels similar to imperative coding: First, do A, then B, then C. Hopefully, when we’re later on in our Haskell journey, we’ll discover a nice architecture to simplify our backend code.
🚚 Bringing Elm Values to Haskell
One way in which Haskell is different from both Elm and Rails is that it is not particularly opinionated. Often the Haskell ecosystem offers multiple different ways to do one particular thing. So whether it’s writing an http server, logging, or talking with a database, the first time we do any of these things we’ll need to decide how.
When adopting a Haskell feature or library, we care about
smallness, e.g. introduce new concepts only when necessary
how “magical” is it? E.g. How surprising is it?
How easy is it to learn?
how easy is it to use?
how comprehensible is the documentation?
explicitness over terseness (but terseness isn’t implicitly bad).
consistency & predictability
“safety” (no runtime exceptions).
Sometimes the Haskell ecosystem provides an option that fits our Elm values, like with the handle pattern, and so we go with it. Other times a library has different values, and then the choice not to use it is easy as well. An example of this is lens/prism ecosystem, which allows one to write super succinct code, but is almost a language onto itself that one has to learn first.
The hardest decisions are the ones where an approach protects us against making mistakes in some way (which we like) but requires familiarity with more language features to use (which we prefer to avoid).
To help us make better decisions, we often try it both ways. That is, we’re willing to build a piece of software with & without a complex language feature to ensure the cost of the complexity is worth the benefit that the feature brings us.
Another approach we take is making decisions locally. A single team might evaluate a new feature, and then demo it and share it with other teams after they have a good sense the feature is worth it. Remember: a super-power of Haskell is easy refactorability. Unlike our ruby code, going through and doing major re-writes in our Haskell codebase is often an hours-or-days-long (rather than weeks-or-months-long) endeavor. Adopting two different patterns simultaneously has a relatively small cost!
Case studies in feature adoption:
🐘 Type-Check All Elephants
One example where our approach is Elm-like in some ways but not in others is how we talk to the database. We’re using a GHC feature called quasiquoting for this, which allow us to embed SQL query strings directly into our Haskell code, like this:
{-# LANGUAGE QuasiQuotes #-} module Animals (listAll) where import Postgres (query, sql) listAll :: Postgres.Handler -> Task Text (List (Text, Text)) listAll postgres = query postgres [sql|SELECT species, genus FROM animals|]
A library called postgresql-typed can test these queries against a real Postgres database and show us an error at compile time if the query doesn’t fit the data. Such a compile-time error might happen if a table or column we reference in a query doesn’t exist in the database. This way we use static checks to eliminate a whole class of potential app/database compatibility problems!
The downside is that writing code like this requires everyone working with it to learn a bit about quasi quotes, and what return type to expect for different kinds of queries. That said, using some kind of querying library instead has a learning curve too, and query libraries tend to be pretty big to support all the different kinds of queries that can be made.
🔣 So Many Webserver Options
Another example where we traded additional safety against language complexity is in our choice of webserver library. We went with servant here, a library that lets you express REST APIs using types, like this:
import Servant data Routes route = Routes { listTodos :: route :- "todos" :> Get '\[JSON\] [Todo], updateTodo :: route :- "todos" :> Capture "id" Int :> ReqBody '[JSON] Todo :> Put '[JSON] NoContent, deleteTodo :: route :- "todos" :> Capture "id" Int :> Delete '[JSON] NoContent } deriving (Generic)
Servant is a big library that makes use of a lot of type-level programming techniques, which are pretty uncommon in Elm, so there’s a steep learning cost associated with understanding how the type magic works. Using it without a deep understanding is reasonably straightforward.
The benefits gained from using Servant outweigh the cost of expanded complexity. Based on a type like the one in the example above, the servant ecosystem can generate functions in other languages like Elm or Ruby. Using these functions means we can save time with backend-to-frontend or service-to-service communication. If some Haskell type changes in a backward-incompatible fashion we will generate new Elm code, and this might introduce a compiler error on the Elm side.
So for now we’re using servant! It’s important to note that what we want is compile-time server/client compatibility checking, and that’s why we swallow Servant’s complexity. If we could get the same benefit without the type-level programming demonstrated above, we would prefer that. Hopefully, in the future, another library will offer the same benefits from a more Elm-like API.
😻 Like what you see?
We're running the libraries discussed above in production. Our most-used Haskell application receives hundreds of thousands of requests per minute without issue and produces hardly any errors.
Code can be found at NoRedInk/haskell-libraries. Libraries have been published to hackage and stackage. We'd love to know what you think!
2 notes · View notes
stumpyjoepete · 5 years ago
Note
How does one actually learn how programming works? I started an online course in R but whenever I look at people talking about programming it's incomprehensible...where does everyone learn what type systems and inheritance and object oriented programming are?
(Sorry if this answer sucks, but I am trying to combat my natural perfectionist tendencies and give some answer to asks rather than guiltily ignoring them forever.)
Learn one particular common programming language. Get proficient enough to do a hobby project or something, and learn the internal terminology of the language and how to apply those concepts. Don’t worry about other languages. This is definitely the most important part, since by the end, you’ll actually know how to program, but you probably won’t have a well-developed vocabulary for talking about programming languages in the abstract or the differences between languages.
Learn some other common language. Treat it on its own terms, but you will inevitably find a lot of overlap with the first one you learned. This will help a lot with learning to separate the terminology/concepts within a given language from the more general concepts they are instantiating (e.g., the way “object oriented programming” and “inheritance” are handled in C++, java, javascript, go, and python are all very different in the details, even though they’re similarly shaped).
Dabble in a variety of languages (or take a “programming languages” survey course), learning just enough of each one to get a sense of what your existing conceptions of programming languages were missing. Aim for breadth and diversity rather than for depth or usefulness. (E.g., learn a little of something lispy like scheme, something ML-y like ocaml or haskell, etc.; rather than learning yet another popular imperative, vaguely object oriented language.) At this point, you will be very well equipped to talk about programming languages. (Another way of looking at this is that you are now cursed to talk about programming languages all the time.)
One thing that might not be obvious while you’re trudging through step 1 is that “learning” additional languages (especially if they’re very similar to languages you already know), is actually pretty easy. Now, if you want to be really good at programming in a particular language, that naturally takes time, but if I just want to investigate a language to figure out what makes it interesting, that’s easily doable in a day or two.
A really popular format for teaching programming languages to people who already are proficient in some other language is the “koan” approach, made popular by (I believe?) the Ruby community. It’s a bunch of prewritten code with some errors in it. You run the program, it eventually gets to some point where there’s a failed assertion or broken test, and it prints out an error. You look at the relevant example code and comments (which are teaching a basic concept within the language), you make the one or two line change, and you rerun it. There are usually several dozen examples, each teaching something different. They start with familiar things (e.g., you already know how if-statements work in some other language, here’s how they work in this language) and gradually work up to the features that make the programming language unique.
Here’s a big list of “koans” for different programming languages.
11 notes · View notes
wordmage-girl · 6 years ago
Text
Mid-Year Book Freakout
@the-knights-who-say-book tagged me in this so I’m taking a break from studying
1. The Best Book of the Year So Far: Strange the Dreamer by Laini Taylor. It was magical and unique. I can’t say much without spoiling it bit the worldbuilding blew me away.
2. Best Sequel of the Year So Far: Muse of Nightmares, the sequel to Strange the Dreamer. I hope there’s more in this world by Laini Taylor because I need to know what happens next to Sarai and Lazlo and Minya (and the rest I guess, lol)
3.  A New Release You Haven’t Read Yet But Want To: I’d say the latest Dr. Greta Helsing (gotta get through the second one first, though!), and Tempests and Slaughter by Tamora Pierce - 2018 still counts as a new release, right? I’m never sure when the books on my tbr actually came out...
4.  Most Anticipated Release for Autumn/Winter: Probably Call Down the Hawk. Maggie, don’t disappoint me!
5.  Your Biggest Disappointment of the Year So Far: I’m usually good at not getting books that will disappoint me, but Labyrinth Lost was such a disappointment. The storytelling was a mess, the romance was unconvincing, and every bit underwhelmed. A lot of people were hyped af for it so it bummed me out that I couldn’t like it.
6. Your Biggest Surprise of the Year So Far: Planetfall by Emma Newman. I was just that vine of the guy going “is this allowed?” during the entire book. Excuse me ma’am who gave you the right
7. New Favorite Author: Merrie Haskell. I read both her short story collections and they were both so good, I added the rest of her stuff to my wish list. Rarely does my thirst for romance get fulfilled in such a specific way. The Wedding Dress Tea Parties of 2443 is my model of romance now.
8. Your Newest Favorite Character: Beatrice from The Witches of New York by Ami McKay, Penelope Duncroft from The Roman and The Regency short by Merrie Haskel, and both Calla and Major Larn from That Game We Played During the War by Carrie Vaughn.
9. Your Newest Fictional Crush: Cinnamon Blade and Soledad from Cinnamon Blade: Knife in Shining Armor. Ladies, this is untoward.
10. A Book that Has Made You Cry: Record of a Spaceborn Few, the third in Becky Chambers’ Wayfarers series. I highly recommend this entire series, especially The Long Way to a Small, Angry Planet, but Record had community building and an aro character and finding your place and what home means and traditions and my little heart just quit.
11. A Book that Has Made You Happy: The Witches of New York by Ami McKay. Witches and love and wlw and ghosts at the turn of the previous century.
12. The Most Beautiful Book of the Year So Far: Strange the Dreamer. Hey Ms. Taylor, give me back my heart!
13. Some Books You Need to Read Before 2019 Ends: Oh god, so many. I’d like to get to the next Witches of New York, Pride by Ibi Zoboi, Dreadful Company by Vivian Shaw (because rereading the first one just isn’t cutting it anymore), Spinning Silver and That Inevitable Victorian Thing before the year is out.
3 notes · View notes
iag12 · 3 years ago
Text
indigenous and metis in canada have the highest suicide rate in canada indigenouse people in canada make up 4.9% of canadas population
suicides and self inflicted injuries are one of the biggest reasons for death among indigenous communities youth and adults up to 44 years of age
for first nations the suicide rate is triple the national average and for metis its double the national average and for inuit its 9 times worst
and in general indigenouse populations have a vunrability to trauma and such even more
Intergenerational trauma
Indigenous people have experienced, and may continue to experience, collective trauma stemming from colonization, the effects of which are passed on from one generation to the next; this is referred to as intergenerational trauma. Colonization led to the forced settlement of nomadic tribes, relocation from traditional settlements, forced removal of children from their homes into residential schools or non-Indigenous homes or orphanages (“Sixties Scoop”)
Colonization led to losses of culture, traditional values, and family stability, as it was made impossible, in many cases, for parents and Elders to pass along vital cultural knowledge and resilience to children who were taken away. In addition, relocation and settlement took many Indigenous people away from their traditional ways of living and thriving
The child welfare system
The current child welfare system continues to be especially traumatic for Indigenous youth. In Canada, 52% of children in foster care are Indigenous, while only 7% of children in Canada are Indigenous (Indigenous Services Canada, 2020).
The Truth and Reconciliation Commission of Canada (2015) recommends reducing the “over-representation of Indigenous children in the care of child welfare.”
Anyone who has experienced trauma is at greater risk for suicide. Most people receiving treatment for mental health issues have had some form of trauma (Rosenberg, 2011), and trauma places people at higher risk for additional mental health issues such as depression and addiction.
When people have healthy coping mechanisms and strong support systems, they are better equipped to heal from trauma. Not only did acts of colonialism cause trauma in Indigenous people, but it also affected their means of coping with and healing from trauma. This is how intergenerational trauma continues to negatively affect generation after generation of Indigenous people today (Linklater, 2014; Haskell & Randell, 2009).
People who have experienced trauma will cope with it in some way, whether they are aware of it or not, and some ways of coping may contribute to suicide risk.
Tumblr media
0 notes
officialleehadan · 7 years ago
Text
99 Shiny New Bugs in the Code
 Y’all have been asking for a sequel to this one, and here it is!
 +++
“How did you do that?”
Rick looked up when Marina spoke. She was real pretty. Big green eyes and red hair. Rick hadn’t worked up the courage to really talk to her yet.
The narrow-eyed expression of suspicion wasn’t really a good sign. Rick had sisters. He knew that look meant trouble.
“I told you; it’s called code,” he said and focused on the line he was trying to get work.
So far, it wasn’t working.
Well, he managed to get some spectacular sparks, and lit the curtains on fire, but Marina was decidedly calm about that. Maybe student mages did that kind of thing a lot? Rick didn’t have any way to know and Marina didn’t seem likely to tell him.
“Yes, but how did you do it?” she persisted, and finally set her book down so she could get a better look at the code he was tryingot write out on the floor in chalk.
God he missed his computer. Less than a week, and he would never take it for granted again.
Seriously. The backspace button. He would sell his soul for a backspace button that worked on chalk.
“I’m trying to figure out how to go home,” he said, and rubbed out one character to replace it with another. Days of trying and it still wasn’t working. He was starting to think it was wasted effort. “Open!”
Nothing.
“Portal magic is something only the Masters can use,” Marina told him shyly. She was still unsure what exactly she was supposed to be doing as Rick scribbled on the floor. For that matter, he really wasn’t sure what she was supposed to be doing. Until he could work the bugs out of his code, nothing was going ot happen. “It can be very difficult, and very dangerous.”
“Well, I got here one way or another,” Rickk pointed out. The code on the floor didn’t do anything, even after he rubbed out one clause and changed it by a few characters. “Crap. I was doing this in Haskell, but it’s not working. Myabe if I run it through Python…”
“What is that?” Marina asked, leaning forward to examine his code. “We use runes for some spells, especially in student magic, but this is something entirely different.”
“Python and Haskell are programming languages,” Rick sat back on his heels and sighed. At least on a computer he could try his code and maybe see what the problem was. This was nothing but ‘it works’ or ‘nope’ and it was driving him crazy. “Some languages are better than others, depending on the task you’re doing. I know a couple different ones, but this is… not exactly my wheelhouse. The magic, I mean.”
Real magic. That was trippy beyond measure and he really didn’t know what to make of it. Still, if code worked on magic, he could figure it out.
Probably.
Maybe.
He hoped, anyway.
Something occurred to him.
“Hey,” he looked up at Marina. “You know magic, right? What makes magic work?”
The question took her by surprise, but she thought for a while before relyping.
“It is energy,” she decided at last, and held out a hand. A little glittle or light ran across her fingertips. “In our world, there are rivers, unseen but present, called leylines. They are invisible, and usually under the earth. That energy is mutable, and shaped by will as guided by word, item, gesture, and rune.”
“Huh,” Rick muttered as he started to translate his line of code from one language to another. “Items?”
“Components, mostly,” Marina produced a vial fo glittering dust out of her belt pouch. Rick paused to examine it. “That is powdered mirror. I use it for communication spells. Another of my spells calls for rose petals, dried before midsummer. Often, the component speaks to the spell.”
“I didn’t write down CatDem,” Rick pointed out as he wrote, but he had a sneaking feeling that it wasn’t going to work any better in Python than it had in Haskell. “It just went off when the code flashed across my mind. But that was different. I mean, I know CatDem so well I could probably write it in my sleep.”
“What is CatDem?” Marina asked, bewildered.
“Huh? Oh, Catastrophic Demise. That spell that… kinda blew a hole in your castle.”
Blew a hole was downplaying it. Catistrophic Demise was an end-game spell that players could only get by doing a long series of complicated side quests. It was supposed to be a game-changer.
It was overkill for the whatever-it-was he nuked with it, but probably better than dying, which seemed pretty likely at the time.
He still felt kind of bad about the giant hole in the castle.
Marina was looking at his code again, and slid off her bench to get closer. “So this is a different language? Why did the first language not work?”
“Python is more object-oriented,” he told her, and held his hand over the line. “Open!”
Nothing. Not even sparks. Not even a waver in the air to suggest what had gone wrong.
God he missed his computer.
“Try with this,” Marina dug in her pocket for a minute and came up with a bottle of black liquid. When she shook it, it shimmered with powdered gold. “It’s made with powdered charcoal of holy basil, and gold.”
Rik examined it and shook the bottle to see the gold flakes float around in the thick liquid. “Does the type of ash matter?”
“Holy Basil is for moving forward, in the literal, and for seeking truth, in the metaphorical,” she told him with a shrug like it was common knowledge. “And gold conducts magic. Light magic, particularly, which I think is what you’re using.”
It was worth a shot. He eyed the floor, but was happier when she offered a slip of rag paper and a glass pen. He wasn’t accustomed to the antique tools, but they were better than chalk.
When he had the code transcribed, he handed the ink back, and looked down at his paper.
“Open!”
The paper lit on fire, and the air shimmered, before spitting out something that looked like a kitten.
Except, of course, kittens usually didn’t have feather wings to match a grey-spotted body.
“Ah,” Marina blinked, and offered her fingers for the little creature to smell. “Well, Ch’reet aren’t from this world…”
The kitten meeped and bumped its’ nose against her fingers politely, before leaping onto Rick’s shoulder, purring loudly.
Rick petted it helplessly and sighed.
“99 shiny new bugs in the code,” he sang glumly as the kitten made itself comfortable on his shoulders. “99 shiny new bugs. Take one down. Pass it around. 200 shiny new bugs in the code.”
+++
Counter-Code
Code for Magic
99 Shiny New Bugs
+++
Support me on Patreon!
65 notes · View notes
mourning-again-in-america · 3 years ago
Text
wonder how much programming language adoption is driven by "types of guy" that represent the language
like, "rust faster, more robust and safer than python, why won't you rewrite your ML stuff to be in rust rather than python?" is a Kind of Guy i've seen a couple different times and i'm vaguely aware of the Haskell-flavored Kind of Guy ("oh actually this is just a paramorphism with some annotations you can collect with an auxiliary catamorphism", "just write it against an arbitrary categorical interface") i personally avoided Ruby and Javascript for a while because it felt like the entire community was devoted to trying to solve already-solved problems (esp. type safety) while not acknowledging that their choice of language made this hard; and C++ especially because I assumed that if I posted any C++ code online people'd lecture me about the glaring security faults that came from using basic std stuff minorly incorrectly, but that it'd devolve into a useless flamewar between several partial solutions -- but I never had any issues with Haskell people -- sometimes they'd speak a little bit out of their depth, but most of the time it was helpful because it meant I got to see what connections their brain was making even if they weren't strictly true analogies
0 notes
codingclassesinchandigarh · 2 years ago
Text
What are the 4 types of programming language?
Tumblr media
A Beginner’s Guide to Understanding Programming Categories
Programming languages serve as the backbone of all software development, enabling us to create websites, mobile apps, games, and enterprise solutions. While hundreds of programming languages exist, they are generally grouped into four main types, based on how they function and interact with hardware and software.
Understanding these categories is essential for beginners aiming to choose the right language based on their project needs or career goals.
1. Procedural Programming Languages
Procedural programming is one of the oldest and most foundational types of programming paradigms. It involves writing instructions in a step-by-step manner, much like a recipe.
Key Features:
Code is organized into procedures or functions.
Executes statements sequentially unless directed otherwise.
Ideal for tasks with a clear, linear process.
Common Procedural Languages:
C – Known for its efficiency and performance.
Pascal – Often used in academic settings.
BASIC – A beginner-friendly language introduced in the early computing days.
Procedural languages are especially useful when performance is critical, such as in system-level programming and embedded systems.
2. Object-Oriented Programming (OOP) Languages
Object-Oriented Programming focuses on organizing code into "objects", which are instances of classes that encapsulate data and behavior.
Key Principles:
Encapsulation – Bundling data with related functions.
Inheritance – Reusing code across related classes.
Polymorphism – Allowing objects to behave differently based on context.
Abstraction – Hiding complexity and showing only relevant details.
Common OOP Languages:
Java – Widely used for Android apps and enterprise software.
C++ – Combines object-oriented and procedural features.
Python – Supports both OOP and functional styles.
The OOP model is highly scalable and ideal for complex, large-scale applications. It’s also widely taught in schools and colleges, much like the Best Content writing classes in Chandigarh, where structure and clarity are equally important in communication.
3. Functional Programming Languages
Functional programming treats computation as the evaluation of mathematical functions. It avoids changing-state and mutable data, making programs more predictable and easier to test.
Key Characteristics:
Focus on pure functions and recursion.
No side effects or shared state.
Encourages immutability and first-class functions.
Popular Functional Languages:
Haskell – A purely functional language often used in academic research.
Lisp – One of the oldest programming languages.
Scala – A hybrid language supporting both functional and object-oriented programming.
Functional programming is especially useful in scenarios involving concurrency, data analysis, and artificial intelligence.
4. Scripting Languages
Scripting languages are generally used to automate repetitive tasks or control existing systems, especially in web development and server-side applications.
Notable Features:
Easy to learn and write.
Interpreted rather than compiled.
Often used for tasks like file manipulation, UI testing, or automating web pages.
Common Scripting Languages:
JavaScript – Essential for interactive web applications.
Python – Frequently used in automation, data science, and AI.
PHP – Widely used for server-side web development.
Scripting languages are known for their flexibility and quick development cycles, making them ideal for rapid prototyping and web-based solutions.
Conclusion
The four main types of programming languages—Procedural, Object-Oriented, Functional, and Scripting—each serve unique purposes and offer different ways of thinking about problems. Choosing the right type depends on your project requirements, personal preference, and long-term goals.
Just like learning effective communication through the Best coding classes in Chandigarh can enhance your writing skills, understanding these programming paradigms will help you write cleaner, more efficient, and scalable code.
Whether you're building a mobile app, automating tasks, or diving into AI, recognizing these programming categories is your first step toward becoming a confident and versatile developer.
0 notes
longbicycle · 3 years ago
Text
Postgresql documentation
Tumblr media
#POSTGRESQL DOCUMENTATION UPDATE#
#POSTGRESQL DOCUMENTATION FULL#
#POSTGRESQL DOCUMENTATION CODE#
This method also requires extra disk space, since it writes a new copy of the table and doesn't release the old copy until the operation is complete. Selects “ full” vacuum, which can reclaim more space, but takes much longer and exclusively locks the table. The parenthesized syntax was added in PostgreSQL 9.0 the unparenthesized syntax is deprecated. Without parentheses, options must be specified in exactly the order shown above. When the option list is surrounded by parentheses, the options can be written in any order. This form is much slower and requires an ACCESS EXCLUSIVE lock on each table while it is being processed.
#POSTGRESQL DOCUMENTATION FULL#
VACUUM FULL rewrites the entire contents of the table into a new disk file with no extra space, allowing unused space to be returned to the operating system. To disable this feature, one can use PARALLEL option and specify parallel workers as zero. This feature is known as parallel vacuum. It also allows us to leverage multiple CPUs in order to process indexes. However, extra space is not returned to the operating system (in most cases) it's just kept available for re-use within the same table. This form of the command can operate in parallel with normal reading and writing of the table, as an exclusive lock is not obtained. Plain VACUUM (without FULL) simply reclaims space and makes it available for re-use. See ANALYZE for more details about its processing. This is a handy combination form for routine maintenance scripts. VACUUM ANALYZE performs a VACUUM and then an ANALYZE for each selected table. With a list, VACUUM processes only those table(s). Without a table_and_columns list, VACUUM processes every table and materialized view in the current database that the current user has permission to vacuum. Therefore it's necessary to do VACUUM periodically, especially on frequently-updated tables.
#POSTGRESQL DOCUMENTATION UPDATE#
In normal PostgreSQL operation, tuples that are deleted or obsoleted by an update are not physically removed from their table they remain present until a VACUUM is done. Your apps run in smart containers called dynos, where the system and language stacks are continually monitored, patched, and upgraded by our team.VACUUM reclaims storage occupied by dead tuples. Build your own, or choose one from the hundreds built by the community to run Gradle, Meteor, NGINX - even Haskell. Our seamless GitHub integration means every pull request spins up a disposable Review App for testing, and any repo can be set up to auto-deploy with every GitHub push to a branch of your choosing.Ĭustomize your stack with a Heroku innovation: Buildpacks. Heroku Flow uses Heroku Pipelines, Review Apps and GitHub Integration to make building, iterating, staging, and shipping apps easy, visual, and efficient.
#POSTGRESQL DOCUMENTATION CODE#
Work fearlessly - Heroku’s build system and Postgres service let you roll back your code or your database to a previous state in an instant.Īlways know what’s going on with your apps thanks to built-in monitoring of throughput, response times, memory, CPU load, and errors. You can elegantly run everything from tiny hobby projects to enterprise-grade e-commerce handling Black Friday surges.Įxtend, enhance, and manage your applications with pre-integrated services like New Relic, MongoDB, SendGrid, Searchify, Fastly, Papertrail, ClearDB MySQL, Treasure Data, and more.ĭata Clips make it easy to keep everyone in the loop with up-to-the-second data insights from your project by sharing query results via a simple and secure URL. Heroku scales in an instant, both vertically and horizontally. Heroku Data for Redis provides powerful data types, great throughput, and built-in support for top languages. The most popular in-memory, key-value datastore - delivered as a service. Reliable and secure PostgreSQL as a service with easy setup, encryption at rest, simple scaling, database forking, continuous protection, and more. Your apps run inside smart containers in a fully managed runtime environment, we handle everything critical for production - configuration, orchestration, load balancing, failovers, logging, security, and more. A powerful and innovative feature set Built for developers, by developers.
Tumblr media
0 notes
0xfc963f18dc21 · 3 years ago
Text
man I don't know why I've just been reminded of this (long read, kinda ranty)
but there's this one program that I (occasionally) express interest in trying to learn how to use it because of the amount of community support for it
it's an open source program, I've found my way around them (and I guess wrote some crappy ones myself) and it's been mostly an okay experience
though, things don't always go smoothly because the code usually has been written with unix systems in mind (sometimes to a fault) and sometimes support for mac os and windows has been pushed to the side (sometimes up to the point where you'd need heavy modifications for it to work on those two operating system families)
alright, fair enough, a lot of the time they do at least attempt to support everyone, with build instructions, releases for people who can't compile, etc.
there's this one program that kind of rubs me the wrong way every time I go to grab a binary from its homepage
not going to point fingers but there is a message saying that the maintainer group will never attempt to fully support mac os / windows for the program, citing their reason as "making people want to switch over to a 'free' platform like unix"
meanwhile their support for the program versions that they officially release on their page (which is outdated by several versions btw) is so bad that it works like garbage in mac os / windows (it's a longstanding program so it works fine on full unix systems)
how do you expect people to want to switch to a free platform when the first experience they got of it was garbage
why is your download page so pretentious that you could've easily replaced the text with a JS-generated HTML element that flips off the person reading the text if they are on mac os / windows and the message will be the same
if I express this all I get is the same cookie-cutter response of "your fault for choosing windows / mac os" and I'm like "I would switch if it wasn't such a pain in the ass to get it set up right and when you all stop acting like elitist pricks"
I also have other things running on my computer that requires windows so I can't fully commit to switching just yet
also, when I mean that mac os / windows support is delayed (especially windows a lot of the time), there is an entire programming language that is:
about the same age as java and haskell
the same kind of language as haskell
and it still has windows support only in beta while (natively-compiling) languages far younger than it have windows support for compilation for almost their lifetime
overall this is just me raving about elitism in computer software
tl;dr: (F)OSS is great but they really need to improve their PR so that people actually want to commit to switching instead of being turned away by elitism and crappy initial impressions of the software
0 notes