Web Development with ReasonMLReasonML is a new, type-safe, functional language that compiles to efficient, readable JavaScript. ReasonML interoperates with existing JavaScript libraries and works especially well with React, one of the most popular front-end frameworks. Learn how to take advantage of the power of a functional language while keeping the flexibility of the whole JavaScript ecosystem. Move beyond theory and get things done faster and more reliably with ReasonML today.
ReasonML is a new syntax for OCaml, a battle-tested programming language used in industry for over 20 years. Designed to be familiar to JavaScript programmers, ReasonML code compiles to highly readable JavaScript. With ReasonML, you get OCaml's powerful functional programming features: a strong static type system with an excellent type inference engine, pattern matching, and features for functional programming with immutable variables. ReasonML also allows flexibility with opt-in side effects, mutation, and object-oriented programming ...
Test-Driven ReactYou work in a loop: write code, get feedback, iterate. The faster you get feedback, the faster you can learn and become a more effective developer. Test-Driven React helps you refine your React workflow to give you the feedback you need as quickly as possible. Write strong tests and run them continuously as you work, split complex code up into manageable pieces, and stay focused on what's important by automating away mundane, trivial tasks. Adopt these techniques and you'll be able to avoid productivity traps and start building React components at a stunning pace!
React has revolutionized web development by abstracting away the details of DOM manipulation. That conceptual elegance has opened the door to a new generation of web testing: clear, expressive, and lightning-fast. That makes React a perfect fit for test-driven development (TDD), a methodology in which tests are a blueprint instead of an afterthought.
Each chapter will present new projects to challenge you and new tools ...
Build Chatbot InteractionsThe next step in the evolution of user interfaces is here. Chatbots let your users interact with your service in their own natural language. Use free and open source tools along with Ruby to build creative, useful, and unexpected interactions for users. Take advantage of the Lita framework's step-by-step implementation strategy to simplify bot development and testing. From novices to experts, chatbots are an area in which everyone can participate. Exercise your creativity by creating chatbot skills for communicating, information, and fun.
Developers of all skill levels can craft user experiences that are natural, easy to use, and most of all, fun. Build chatbots using free, open source tools and launch them to popular chat platforms like Slack and Amazon's Alexa. Use the Ruby programming language and the Lita bot framework to unlock fun and powerful chat abilities such as sending text messages and emails, creating new meme images, driving a robot around the room, and talking out lou ...
Beginning Kubernetes on the Google Cloud PlatformUse this beginner's guide to understand and work with Kubernetes on the Google Cloud Platform and go from single monolithic Pods (the smallest unit deployed and managed by Kubernetes) all the way up to distributed, fault-tolerant stateful backing stores.
You need only a familiarity with Linux, Bash, and Python to successfully use this book. Proficiency in Docker or cloud technology is not required. You will follow a learn-by-doing approach, running small experiments and observing the effects.
Google open sourced Kubernetes in 2015 and now it is the industry standard in container orchestration. It has been adopted by all leading vendors of cloud, on-prem, and hybrid infrastructure services: Microsoft (Azure AKS), Amazon (AWS EKS), IBM (IBM Cloud Kubernetes Services), Alibaba Cloud (ACK), RedHat (OpenShift), and Pivotal (PKS). Even though Kubernetes is offered by all of the market-leading cloud providers, the Google Cloud Platform (GCP) offers an integrated shell (Google Cloud Shell) ...
Beginning App Development with FlutterCreate iOS and Android apps with Flutter using just one codebase. App development on multiple platforms has historically been difficult and complex. This book breaks down complex concepts and tasks into easily digestible segments with examples, pictures, and hands-on labs with starters and solutions.
In doing so, you'll develop a basic understanding of the Dart programming language; the entire Flutter development toolchain; the differences between stateful and stateless widgets; and a working knowledge of the architecture of apps. All the most important parts of app development with Flutter are covered in this book. Work with themes and styles. Develop custom widgets. Teach your app to respond to gestures like taps, swipes, and pinches. Design, create and control the layout of your app. Create tools to handle form data entry from users. And ultimately create killer multiscreen apps with navigation, menus, and tabs.
Flutter is Google's new framework for creating mobile apps that ...
Beginning Database Programming Using ASP.NET Core 3Hit the ground running with this book to quickly learn the fundamentals of HTML form processing, user authentication, and database CRUD (Create, Read, Update, and Delete) operations using the ASP.NET Core family of technologies. You will utilize cutting-edge and popular technology options from both the server side and client side to help you achieve your web application goals as quickly as possible.
Developers who want to learn ASP.NET Core and complementary technologies are often overwhelmed by the large number of options involved in building modern web applications. This book introduces you to the most popular options so that you can confidently begin working on projects in no time. You will learn by example, building a sample application that demonstrates how the same application can be built using different options. This experiential approach will give you the basic skills and knowledge to understand how the options work together so that you can make an informed decision about the ...
Exploring BlazorBuild and develop web applications with Blazor in C#. This book will cover all three types of Blazor – server-side, client-side, and hosted along with other features of the technology. You'll see that Blazor is a web UI framework based on C#, Razor, and HTML and how it runs front-end logic using C# either on the server or on the browser using WebAssembly.
The author starts by introducing WebAssembly and gives an overview of Blazor along with its various categories. Next, you'll get started with Blazor where you learn the basics, including Razor syntax implementation. Here you will go over the major differences between Blazor and Razor and how the syntax works. A demo of the layout and navigation for server-side Blazor is followed by usage of Razor syntax to control an application in client-side Blazor. Further, you will go through the project layout, navigation, and routes for the API. Here, you will understand how to access the API from the front end and use the shared library fo ...
Raspberry Pi Projects for KidsThe Raspberry Pi is an inexpensive, pocket-sized computer that will help you build and code your own hardware projects.
Raspberry Pi Projects for Kids will show you how to harness the power of the Raspberry Pi to create 12 cool projects using simple code and common materials like a webcam, microphone, and LED lights. Step-by-step instructions and detailed diagrams guide you through each project.
After a brief introduction to the Python programming language, you'll learn how to: Create an LED night-light that turns itself on and off; Set up a Raspberry Pi camera to take selfies and videos; Set up a webcam to stream video to your cell phone; Manipulate environments in Minecraft; Hijack local radio waves to play your own songs and recordings; Configure Raspberry Pi to send texts to a cell phone; Track your family members locations via wi-fi and Bluetooth; Create an MP3 player; Set up a camera to take motion-triggered photos of wildlife; Control the electronics in your home with your ...
Learn to Program with App InventorYou've swiped and tapped your way through countless apps, but have you ever created one? Now you can, thanks to Learn to Program with App Inventor. In less than an hour, you'll be able to build and run your first app!
App Inventor is a free software for making Android apps. All you need is a PC with an Internet connection to build your app, and a mobile phone for testing. You'll use a simple drag-and-drop interface, which minimizes errors and avoids too much typing.
A certified App Inventor Master Trainer, Logan breaks down each project into logical steps, lists the components you'll need, and then shows you how to create screen designs, control program flow with conditionals and loops, and store data in variables and lists. Once you've tested the app on your phone, you can test what you learned with challenges at the end of each chapter.
You'll build cool apps like: Hi, World!: Use your voice to send a text message; Practice Makes Perfect: Rehearse a speech or dance routine w ...
Mining Social MediaDid fake Twitter accounts help sway a presidential election? What can Facebook and Reddit archives tell us about human behavior? In Mining Social Media, senior BuzzFeed reporter Lam Thuy Vo shows you how to use Python and key data analysis tools to find the stories buried in social media.
Whether you're a professional journalist, an academic researcher, or a citizen investigator, you'll learn how to use technical tools to collect and analyze data from social media sources to build compelling, data-driven stories.
Learn how to: Write Python scripts and use APIs to gather data from the social web; Download data archives and dig through them for insights; Inspect HTML downloaded from websites for useful content; Format, aggregate, sort, and filter your collected data using Google Sheets; Create data visualizations to illustrate your discoveries; Perform advanced data analysis using Python, Jupyter Notebooks, and the pandas library; Apply what you've learned to research topics on you ...