• 开源镜像
  • 开源沙龙
  • 媛宝
  • 猿帅
  • 注册
  • 登录
  • 息壤开源生活方式平台
  • 加入我们

开源日报

  • 2018年5月30日:开源日报第83期

    30 5 月, 2018

    每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,欢迎关注开源日报。交流QQ群:202790710;微博:https://weibo.com/openingsource;电报群 https://t.me/OpeningSourceOrg


    今日推荐开源项目:《微信小程序汇总 weixin-xiaochengxu666-info》GitHub链接

    推荐理由:这是一个微信小程序开源项目库的集合,里面包括了UI组件,开发框架,实用库,开发工具,服务端,还有一些实例和Demo,看完之后才发现微信其实挺厉害的,对于正在进行微信小程序开发的朋友来说无疑值得一看,无论是找到些好用的工具或者是看一看其他的项目相互学习,相信都能有一些收获。


    今日推荐英文原文:《5 trending open source machine learning JavaScript frameworks》作者:Dr. Michael J. Garbade

    原文链接:https://opensource.com/article/18/5/machine-learning-javascript-frameworks

    推荐理由:这篇文章介绍了5个关于机器学习模型的 JavaScript 框架,对于熟悉 JavaScript 的朋友们来说,使用这些框架可能不失为是一个代替 Python 的好办法

    5 trending open source machine learning JavaScript frameworks

    The tremendous growth of the machine learning field has been driven by the availability of open source tools that allow developers to build applications easily. (For example, AndreyBu, who is from Germany and has more than five years of experience in machine learning, has been utilizing various open source frameworks to build captivating machine learning projects.)

    Although the Python programming language powers most of the machine learning frameworks, JavaScript hasn’t been left behind. JavaScript developers have been using various frameworks for training and deploying machine learning models in the browser.

    Here are the five trending open source machine learning frameworks in JavaScript.

    1. TensorFlow.js

    TensorFlow.js is an open source library that allows you to run machine learning programs completely in the browser. It is the successor of Deeplearn.js, which is no longer supported. TensorFlow.js improves on the functionalities of Deeplearn.js and empowers you to make the most of the browser for a deeper machine learning experience.

    With the library, you can use versatile and intuitive APIs to define, train, and deploy models from scratch right in the browser. Furthermore, it automatically offers support for WebGL and Node.js.

    If you have pre-existing trained models you want to import to the browser, TensorFlow.js will allow you do that. You can also retrain existing models without leaving the browser.

    2. Machine learning tools

    The machine learning tools library is a compilation of resourceful open source tools for supporting widespread machine learning functionalities in the browser. The tools provide support for several machine learning algorithms, including unsupervised learning, supervised learning, data processing, artificial neural networks (ANN), math, and regression.

    If you are coming from a Python background and looking for something similar to Scikit-learn for JavaScript in-browser machine learning, this suite of tools could have you covered.

    3. Keras.js

    Keras.js is another trending open source framework that allows you to run machine learning models in the browser. It offers GPU mode support using WebGL. If you have models in Node.js, you’ll run them only in CPU mode. Keras.js also offers support for models trained using any backend framework, such as the Microsoft Cognitive Toolkit (CNTK).

    Some of the Keras models that can be deployed on the client-side browser include Inception v3 (trained on ImageNet), 50-layer Residual Network (trained on ImageNet), and Convolutional variational auto-encoder (trained on MNIST).

    4. Brain.js

    Machine learning concepts are very math-heavy, which may discourage people from starting. The technicalities and jargons in this field may make beginners freak out. This is where Brain.js becomes important. It is an open source, JavaScript-powered framework that simplifies the process of defining, training, and running neural networks.

    If you are a JavaScript developer who is completely new to machine learning, Brain.js could reduce your learning curve. It can be used with Node.js or in the client-side browser for training machine learning models. Some of the networks that Brain.js supports include feed-forward networks, Ellman networks, and Gated Recurrent Units networks.

    5. STDLib

    STDLib is an open source library for powering JavaScript and Node.js applications. If you are looking for a library that emphasizes in-browser support for scientific and numerical web-based machine learning applications, STDLib could suit your needs.

    The library comes with comprehensive and advanced mathematical and statistical functions to assist you in building high-performing machine learning models. You can also use its expansive utilities for building applications and other libraries. Furthermore, if you want a framework for data visualization and exploratory data analysis, you’ll find STDLib worthwhile.

    Conclusion

    If you are a JavaScript developer who intends to delve into the exciting world of machine learning or a machine learning expert who intends to start using JavaScript, the above open source frameworks will intrigue you.


    每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,欢迎关注开源日报。交流QQ群:202790710;微博:https://weibo.com/openingsource;电报群 https://t.me/OpeningSourceOrg

  • 2018年5月29日:开源日报第82期

    29 5 月, 2018

    每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,欢迎关注开源日报。交流QQ群:202790710;微博:https://weibo.com/openingsource;电报群 https://t.me/OpeningSourceOrg


    今日推荐开源项目:《React-motion+Animated React-spring》GitHub链接

    推荐理由:React-spring 是一个 CSS JavaScript 动画脚本。它继承了许多 React-motions 的 api,可以用来制作各种反馈动画,例如令使用者点击画面中的某些元素来激活画面中元素的移动,或者是通过拖动来移动元素等等。

    它有很多基础元素(例如 Trail 和 Spring ),可以插入许多自定义的内容(颜色,梯度等等)。而且可以通过直接提交给 DOM 来生成动画,而不需要逐帧重新渲染组件。


    今日推荐英文原文:《Everything you knew about Chromebooks is wrong》作者:Mike Elgan

    原文链接:https://www.computerworld.com/article/3276329/chrome-os/everything-you-knew-about-chromebooks-is-wrong.html

    推荐理由:Chromebook 是 Google 推出的网络笔记本。随着它的发展,对于它的旧观念已经过时了,这篇文章介绍的就是关于 Chromebook 的十大误区

    Everything you knew about Chromebooks is wrong

    Google’s slow, limited, browser-only, cloud-centric laptop platform is now the most powerful and capable user platform on the planet.

    Yeah, I said it.

    Apple fans laugh at this idea, saying that a MacBook Pro can run the Chrome browser and gain all the benefits of a Chromebook, as well as all the benefits and leading-edge content-creation tools of a far more elegant, better designed and better engineered device.

    [ To comment on this story, visit Computerworld’s Facebook page. ]

    Windows users carp that Chromebooks are cute, but not serious business tools. The Surface Book 2 is also a tiny laptop, they say, but a real computer.

    Linux developers concede Chromebooks are interesting but argue they can’t be used for software development.

    But these obsolete stereotypes are not compatible with the new reality of Chromebooks.

    It’s time to clear up the top 10 myths that are no longer true about Chromebooks.

    Myth 1: Chromebooks don’t run apps

    The original assumed vision of the Chromebook platform was a laptop and operating system capable of running only the Chrome web browser. You could do anything you wanted, as long as you wanted to stay on the web at all times.

    Today, the best new Chromebooks can runs apps from three additional operating systems.

    Not only do Chromebooks run apps, but they run more apps without dual- or multi-booting than any other computing platform. Chromebooks can run apps from Android, Linux and Windows concurrently in the same session.

    multios chromebook
    Multiple operating system support on Chromebooks is not about dual-booting. Apps from multiple operating systems run concurrently and side by side. Here I’m running Notepad++ for Windows on the left, an Android game called Orbit in the top right, and below that — why not? — Chrome.

    Myth 2: Chromebooks don’t run Android apps well

    When I first saw the Android-on-Chrome-OS demo at Google I/O four years ago, I was pessimistic. But now that I’m running Android apps on my Pixelbook every day, I have to admit that I was wrong. The better Chromebooks run Android apps very well, and they run most of them.

    Chrome OS is also evolving rapidly into a closer-to-native Android device. Commits in the Chromium Gerrit reveal the forthcoming ability for the Files application in Chrome OS to reveal all the Android files that would normally be accessible to users on an Android phone.

    Android support alone makes Chromebooks one of the best platforms for apps, but that’s just the beginning.

    Myth 3: Chromebooks don’t run Linux

    At the recent Google I/O, the company announced that it’s building a Chrome OS–specific virtual machine for Linux that will start fast and integrate completely. While today there is a range of approaches for running various flavors of Linux on a Chromebook, tomorrow Linux will run well and feel native.

    Myth 4: Chromebooks don’t run Windows

    Windows apps are supported on Chromebooks via apps. One with a good reputation is the beta version of CrossOver for Chrome OS. It’s not only free, but it currently offers free support as well.

    Myth 5: Chromebooks are slow

    Different aspects of work are faster or slower on different platforms and devices, and these differences are magnified when you compare Chromebooks to macOS, Windows or Linux devices.

    I pointed out earlier that Chromebooks run more apps than any operating system ever. However, most of these run in some kind of emulation and aren’t going to be as fast as on their native platforms.

    Many people spend most of their time in a browser, and for people who use Chrome browsers, the experience of using Chrome is far faster on the new generation of Chromebooks.

    When I ran Chrome on my MacBook Pro, adding more tabs and extensions caused the entire laptop to slow to a crawl and the fan to spin loudly. Chrome on a MacBook used to crush my productivity.

    Using a Pixelbook, I can run dozens of tabs and dozens of extensions, and it flies. (And the Pixelbook doesn’t even have a fan.)

    So my MacBook Pro is fast with apps but slow with serious Chrome use.

    The Pixelbook shipped in October. By the time of its first anniversary, we’ll see some very powerful alternatives from other companies.

    Google is working on a Chromebook that integrates Intel’s high-performance “Kaby Lake G” processors, which feature integrated Radeon graphics.

    Acer is joining the high-end Chromebook market with new products announced this week called the Chromebook 13, Chromebook Spin 13 and Chromebook Spin 15. Unlike Acer’s previous education-market Chromebooks, these are powered by eighth-generation Intel chipsets.

    They are very Pixelbook-like, with metal chassis and hinges that enable tablet mode. The 15-inch model is the first of that size to offer a Pixelbook-like rotating hinge.

    Many more are coming. And they’re very fast.

    Myth 6: Chromebooks are limiting

    The Chrome web browser — as well as the extensions that give Chrome its main advantage against other browsers — also features a radically underappreciated dimension: the nexus between data and application.

    One nice example is a new Chrome extension called Okta PassProtect, which checks your username and password against the “Have I Been Pwned?” database every time you log into any website. The database is a collection of credentials leaked online.

    The fact that the extension is built into the browser means security doesn’t rely on the user to remember anything.

    Every online application and site gets enhanced by a specific data source.

    Another example is a Chrome extension called Hunter from a company of the same name. It adds a button to Chrome that, when pressed, shows you a list of every email address ever used online using the same domain as the one you are currently browsing, making it easy to contact anyone at that company.

    The ability to add specific data sets to any website is monstrously powerful.

    Another underappreciated aspect of Chrome extensions is the ability to add features to cloud applications not intended or envisioned by the application maker. Services such as Google’s own Gmail are enhanced by hundreds of Chrome extensions, giving that email service new powers such as mail merge, integration between Gmail and Dropbox, or the to-do app Remember the Milk.

    Other extensions enter your user credentials for you, enable you to use a highlighter pen on the internet, block ads and a million other features.

    Chrome extensions are collectively so powerful that the end result is basically a second internet — a “super internet” that’s way better and more functional than the regular one.

    The only problem is that too using many extensions in Chrome bogs down that browser, making the “super internet” super slow on Windows and macOS.

    This problem is solved with a high-end Chromebook such as Google’s own Pixelbook, which lets you run dozens of Chrome extensions simultaneously without a noticeable performance hit.

    In other words, the “super internet” is available only to Chromebook users. Everyone else is locked out.

    Myth 7: Chromebooks can’t be used for software development

    Now that Chromebooks are getting far better and easier for running Linux, Google is explicitly promoting Chromebooks as a development platform.

    From the Google pitch: “Support for Linux will enable you to create, test and run Android and web apps for phones, tablets and laptops all on one Chromebook. Run popular editors, code in your favorite language and launch projects to Google Cloud with the command-line. Everything works directly on a Chromebook.”

    Myth 8: Chromebooks can’t be used for photo editing

    My personal favorite photo editor has long been Google’s Snapseed. The experience of running Snapseed for Android on a 13-inch touchscreen is far better than on the iPhone that I used to use. Other photographers prefer Polarr, Adobe Lightroom and others, which also run on the Chromebook via Android.

    Myth 9: Chromebooks can’t be used offline

    A huge number of major cloud services, especially Google ones such as Docs and Gmail, offer easy offline modes. The Chrome Web Store is packed with free extensions that give you offline capability.

    offline pixelbook
    The Chromebook Pixelbook is the perfect travel laptop and is well-designed for running apps and doing work offline.

    Myth 10: Chromebooks are cheap

    My Pixelbook with 16GB of RAM and 512GB of storage, plus the pen, case and taxes, exceeded $2,000. Yes, some low-end Chromebooks are very cheap. But the powerful new generation is more comparable to a normal laptop.

    Here’s what you need to know

    Chromebooks aren’t perfect and they’re not for everybody.

    As well-designed and well-made as the new Chromebooks are, they still don’t have the fit and finish of the MacBook Pro line. They’re not as capable as full-blown PCs at some tasks, especially processor- and graphics-intensive tasks.

    But the new generation of Chromebooks can run more apps than any platform in history.

    They have exclusive access to the “super internet.”

    And they’re still the most secure computing platform ever.

    My advice is to choose the computing platform that suits you best. But base your choice on the new facts, not the old myths.


    每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,欢迎关注开源日报。交流QQ群:202790710;微博:https://weibo.com/openingsource;电报群 https://t.me/OpeningSourceOrg

  • 2018年5月28日:开源日报第81期

    28 5 月, 2018

    每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,欢迎关注开源日报。交流QQ群:202790710;微博:https://weibo.com/openingsource;电报群 https://t.me/OpeningSourceOrg


    今日推荐开源项目:《Web 开发人员技术路线图 Web Developer Roadmap – 2018》GitHub链接

    推荐理由:该项目包含了一系列图表,展示了为了成为前端、后端、DevOps 开发人员,你可以走的路径和你可能用得到的技术。它并不是让你去学习那些很潮的流行玩意,而是给你一个大概的轮廓,在你困惑的时候指出一个方向告诉你可以去学什么。相信对于正在 Web 路上不懈奋斗的朋友们来说,这份图表会派上用场的。


    今日推荐英文原文:《Getting started with Laravel》作者:Aslam Multani

    原文链接:https://opensourceforu.com/2018/05/getting-started-with-laravel/

    推荐理由:介绍了 PHP 框架 Laravel,包括它的安装方法和最新特性,适合正在学习 PHP 的朋友们一读

    Getting started with Laravel

    PHP is regarded as one of the most popular and versatile scripting language. It is really easy to get hands on with PHP. Almost exclusively used in web development, it has gained far reaching recognition. PHP frameworks are popularly known as functional platform. It helps developers to make complex applications quickly and easily. There are numerous PHP frameworks which are there in the market, out of which Laravel is popular due its elegancy and stability.

    What is Laravel?
    Laravel is a framework created by Taylor Otwell. It is an advanced form of CodeIgniter framework. Laravel is an expressive framework viable for large scale work.

    • It is following MVC (Model – View – Controller) architectural pattern.

    Laravel is designed to facilitate the users, helping them to work in standardized, elegant and quick manner.

    Standardization:
    Laravel has a strict Model-View-Controller (MVC) structure.  It uses object oriented programming concept and allows easy sharing of the project with the developers.  The style and methodology followed in Laravel Applications is almost similar which gives freedom to the developers to easily come in and work instantly with familiar mindset.

    Elegance
    Documentation of Laravel is neatly structured.  It can easily match various versions of Laravel. It is very flexible and one can do same things in a number of different ways. The whole framework provides simple characteristics to help developers write the code in organized and self-documenting manner.

    Speed 
    The speed of building an application is quite fast. Laravel works really well with various third party packages.  This indicates that full support for Facebook API, MailChimp API, Loggers, Profilers and other tools can be added easily within strike of few keystrokes.

    The Composer
    Composer is a dependency manager for PHP, which allows users to manage libraries in a meaningful manner. By dependency, it means the libraries that are required to make a page work. The composer will download all the libraries required in a particular project. Before starting with Laravel, one has to install composer in the system. You can look for the steps to install a composer here.

    Installation of Laravel

    You can install Laravel in the following three ways:

    • Laravel Installer
    • Via Composer Create Project
    • Download code from Github

    We will be using composer to set up Laravel.

    1. Open the command prompt.
    2. Go to the path in your machine where you wish to install Laravel.
    For instance, D:\projects

    3. Run the command from the command window D:\projects path:

    composer create-project --prefer-dist laravel/laravel <project-name>

    We are keeping the project name: laravel-demo. Once you run the above command it will like the following:

    Above command will create a new laravel setup on this path:

    D:\projects\ laravel-demo

    4. Database Connection

    Once installation process will be completed successfully, open .env file from your root directory and setup database configurations in this file as per below mentioned screenshot.

    Now, database connection is successful.

    5. Run new setup

    Here we assume that you have installed PHP on your local server to run our new setup.
    Now run the below command from the following:

    D:\projects\laravel-demo>php artisan serve

    see the screenshot below:

    Once you run the command in command prompt, it will show the message like Laravel development server started, as shown in the above screenshot.

    Now you can run your new Laravel Application on Browser using the following:

    http://127.0.0.1:8000

    The default page of Laravel will be displayed after successful completion of the above steps.

    Laravel is successfully setup.

    Key features of Laravel 5.6
    The latest version of Laravel is 5.6, which is out now. Let us explore, what is new in this version

    1. Single server Scheduling:
    If you have a task scheduler running on multiple servers, a particular task will run on each server. With the help of onOneServer() method you can indicate that a task should run on any one of those servers.

    $schedule->command('report:generate')
    
       ->fridays()
    
       ->at( '17:00')
    
       ->onOneServer();

    You must use memcached or redis cache driver as the default application, so that you can take advantage of single server task scheduling.

    2. Limit rate dynamically:
    This function in Laravel 5.6 provides flexibility to its users and allows to easily rate limit on a per user basis.

    Route::middleware('auth:api', 'throttle:rate_limit,1')
        ->group(function () {
            Route::get('/user', function () {
                //
            });
        });

    In this example, the rate limit is an attribute of App\User model. It is used to determine the number of requests that are allowed in the given time limit.

    3. Broadcast the Channel Classes
    The channel classes can be used in routes/channels.php file in place of using closures.
    make:channel command is introduced in Laravel 5.6. It can be used for generating a new channel class.

    php artisan make:channel OrderChannel

    Also, you can register your channel in the routes/channels.php file like the following:

    use App\Broadcasting\OrderChannel;
    
    Broadcast::channel('order.{order}', OrderChannel::class);

    4. API Controller Generation 
    You can now generate a resource controller for APIs, where unnecessary create and edit actions are avoided. This is applicable to resource controllers returning HTML.  Use –api flag to generate a resource controller.

    php artisan make:controller API/PhotoController --api

    5. Aliases for Blade Component
    With Laravel 5.6, we can make alias for blade components in order to have more convenient access.

    For instance, suppose a component is stored at resources/views/components/alert.blade.php. In order to make a shorter name, you can use the component() method to alias it.

    Blade::component('components.alert', 'alert');

    Now you can easily render it with the aliases defined:

    @component('alert')
        <p>This is an alert component</p>
    @endcomponent

    6. Argon Password Hashing
    A new password hashing algorithm is supported by Laravel 5.6. One can even control which hashng driver to be used by default in the new configuration file

    – config/hashing .php

    7. Method for UUID (Universal Unique Identifiers)
    For generating Universal Unique Identifiers, two new methods are available in the Illuminate\Support\Str Class.

    //<em> The methods return a Ramsey\Uuid\Uuid object
    </em>
    return (string) Str::uuid();
    
    return (string) Str::orderedUuid();

    The orderedUuid()method will generate the first UUID. This will be time-stamped for efficient and simple indexing of database.

    8. Bootstrap 4
    Laravel 5.6 has covered Bootstrap 4 functionalities to provide better frontend development functions.

    The upgrade from version 5.5 to 5.6 will hardly take 30 minutes. I hope you will now be able to easily install the latest version of Laravel.  If you have any new thing to say about Laravel, your views are welcomed in the comments below.


    每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,欢迎关注开源日报。交流QQ群:202790710;微博:https://weibo.com/openingsource;电报群 https://t.me/OpeningSourceOrg

  • 2018年5月27日:开源日报第80期

    26 5 月, 2018

    每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,欢迎关注开源日报。交流QQ群:202790710;微博:https://weibo.com/openingsource;电报群 https://t.me/OpeningSourceOrg


    今日推荐开源项目:《深度学习实践案例合集 Deep-Learning-21-Examples》GitHub链接

    推荐理由:这个项目中收集了《21个项目玩转深度学习———基于 TensorFlow 的实践详解》一书配套的代码。它提供了每一个项目的代码和它们的运行方法,让无论是初学者还是老手都能够简单的开始实践,在实践中掌握深度学习和使用 TensorFlow 的技巧。

    代码推荐的运行环境为:Ubuntu 14.04,Python 2.7、TensorFlow >= 1.4.0。请尽量使用类 UNIX 系统和 Python 2 运行代码。如果有任何问题,可以通过 issues 提出建议。


    今日推荐英文原文:《15 books for kids who (you want to) love Linux and open source》作者: Jen Wike Huger

    原文链接:https://opensource.com/article/18/5/books-kids-linux-open-source

    推荐理由:面向喜爱 Linux 和开源的孩子们的书籍,兴许等有了孩子之后我们可以推荐给他们看一看,这些书大部分都是简单易懂的

    15 books for kids who (you want to) love Linux and open source

    In my job I’ve heard professionals in tech, from C-level executives to everyone in between, say they want their own kids to learn more about Linux and open source. Some of them seem to have an easy time with their kids following closely in their footsteps. And some have a tough time getting their kids to see what makes Linux and open source so cool. Maybe their time will come, maybe it won’t. There’s a lot of interesting, valuable stuff out there in this big world.

    Either way, if you have a kid or know a kid that may be interested in learning more about making something with code or hardware, from games to robots, this list is for you.

    15 books for kids with a focus on Linux and open source

    Adventures in Raspberry Pi by Carrie Anne Philbin

    The tiny, credit-card sized Raspberry Pi has become a huge hit among kids—and adults—interested in programming. It does everything your desktop can do, but with a few basic programming skills you can make it do so much more. With simple instructions, fun projects, and solid skills, Adventures in Raspberry Pi is the ultimate kids’ programming guide! (Recommendation by Joshua Allen Holm | Review is an excerpt from the book’s abstract)

    Automate the Boring Stuff with Python by Al Sweigart

    This is a classic introduction to programming that’s written clearly enough for a motivated 11-year-old to understand and enjoy. Readers will quickly find themselves working on practical and useful tasks while picking up good coding practices almost by accident. The best part: If you like, you can read the whole book online. (Recommendation and review by DB Clinton)

    Coding Games in Scratch by Jon Woodcock

    Written for children ages 8-12 with little to no coding experience, this straightforward visual guide uses fun graphics and easy-to-follow instructions to show young learners how to build their own computer projects using Scratch, a popular free programming language. (Recommendation by Joshua Allen Holm | Review is an excerpt from the book’s abstract)

    Doing Math with Python by Amit Saha

    Whether you’re a student or a teacher who’s curious about how you can use Python for mathematics, this book is for you. Beginning with simple mathematical operations in the Python shell to the visualization of data using Python libraries like matplotlib, this books logically takes the reader step by easily followed step from the basics to more complex operations. This book will invite your curiosity about the power of Python with mathematics. (Recommendation and review by Don Watkins)

    Girls Who Code: Learn to Code and Change the World by Reshma Saujani

    From the leader of the movement championed by Sheryl Sandberg, Malala Yousafzai, and John Legend, this book is part how-to, part girl-empowerment, and all fun. Bursting with dynamic artwork, down-to-earth explanations of coding principles, and real-life stories of girls and women working at places like Pixar and NASA, this graphically animated book shows what a huge role computer science plays in our lives and how much fun it can be. (Recommendation by Joshua Allen Holm | Review is an excerpt from the book’s abstract)

    Invent Your Own Computer Games with Python by Al Sweigart

    This book will teach you how to make computer games using the popular Python programming language—even if you’ve never programmed before! Begin by building classic games like Hangman, Guess the Number, and Tic-Tac-Toe, and then work your way up to more advanced games, like a text-based treasure hunting game and an animated collision-dodging game with sound effects. (Recommendation by Joshua Allen Holm | Review is an excerpt from the book’s abstract)

    Lauren Ipsum: A Story About Computer Science and Other Improbable Things by Carlos Bueno

    Written in the spirit of Alice in Wonderland, Lauren Ipsum takes its heroine through a slightly magical world whose natural laws are the laws of logic and computer science and whose puzzles can be solved only through learning and applying the principles of computer code. Computers are never mentioned, but they’re at the center of it all. (Recommendation and review by DB Clinton)

    Learn Java the Easy Way: A Hands-On Introduction to Programming by Bryson Payne

    Java is the world’s most popular programming language, but it’s known for having a steep learning curve. This book takes the chore out of learning Java with hands-on projects that will get you building real, functioning apps right away. (Recommendation by Joshua Allen Holm | Review is an excerpt from the book’s abstract)

    Lifelong Kindergarten by Mitchell Resnick

    Kindergarten is becoming more like the rest of school. In this book, learning expert Mitchel Resnick argues for exactly the opposite: The rest of school (even the rest of life) should be more like kindergarten. To thrive in today’s fast-changing world, people of all ages must learn to think and act creatively―and the best way to do that is by focusing more on imagining, creating, playing, sharing, and reflecting, just as children do in traditional kindergartens. Drawing on experiences from more than 30 years at MIT’s Media Lab, Resnick discusses new technologies and strategies for engaging young people in creative learning experiences. (Recommendation by Don Watkins | Review from Amazon)

    Python for Kids by Jason Briggs

    Jason Briggs has taken the art of teaching Python programming to a new level in this book that can easily be an introductory text for teachers and students as well as parents and kids. Complex concepts are presented with step-by-step directions that will have even neophyte programmers experiencing the success that invites you to learn more. This book is an extremely readable, playful, yet powerful introduction to Python programming. You will learn fundamental data structures like tuples, lists, and maps. The reader is shown how to create functions, reuse code, and use control structures like loops and conditional statements. Kids will learn how to create games and animations, and they will experience the power of Tkinter to create advanced graphics. (Recommendation and review by Don Watkins)

    Scratch Programming Playground by Al Sweigart

    Scratch programming is often seen as a playful way to introduce young people to programming. In this book, Al Sweigart demonstrates that Scratch is in fact a much more powerful programming language than most people realize. Masterfully written and presented in his own unique style, Al will have kids exploring the power of Scratch to create complex graphics and animation in no time. (Recommendation and review by Don Watkins)

    Secret Coders by Mike Holmes

    From graphic novel superstar (and high school computer programming teacher) Gene Luen Yang comes a wildly entertaining new series that combines logic puzzles and basic programming instruction with a page-turning mystery plot. Stately Academy is the setting, a school that is crawling with mysteries to be solved! (Recommendation by Joshua Allen Holm | Review is an excerpt from the book’s abstract)

    So, You Want to Be a Coder?: The Ultimate Guide to a Career in Programming, Video Game Creation, Robotics, and More! by Jane Bedell

    Love coding? Make your passion your profession with this comprehensive guide that reveals a whole host of careers working with code. (Recommendation by Joshua Allen Holm | Review is an excerpt from the book’s abstract)

    Teach Your Kids to Code by Bryson Payne

    Are you looking for a playful way to introduce children to programming with Python? Bryson Payne has written a masterful book that uses the metaphor of turtle graphics in Python. This book will have you creating simple programs that are the basis for advanced Python programming. This book is a must-read for anyone who wants to teach young people to program. (Recommendation and review by Don Watkins)

    The Children’s Illustrated Guide to Kubernetes by Matt Butcher, illustrated by Bailey Beougher

    Introducing Phippy, an intrepid little PHP app, and her journey to Kubernetes. (Recommendation by Chris Short | Review from Matt Butcher’s blog post.)

    Bonus books for babies

    CSS for Babies, Javascript for Babies, and HTML for Babies by Sterling Children’s

    These concept books familiarize young ones with the kind of shapes and colors that make up web-based programming languages. This beautiful book is a colorful introduction to coding and the web, and it’s the perfect gift for any technologically minded family. (Recommendation by Chris Short | Review from Amazon)


    每天推荐一个 GitHub 优质开源项目和一篇精选英文科技或编程文章原文,欢迎关注开源日报。交流QQ群:202790710;微博:https://weibo.com/openingsource;电报群 https://t.me/OpeningSourceOrg

←上一页
1 … 239 240 241 242 243 … 262
下一页→

Proudly powered by WordPress