自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Sorel的博客

生活的意义在于奉献、对他人发生兴趣以及互助合作

  • 博客(77)
  • 资源 (144)
  • 收藏
  • 关注

原创 解决systemctl无法启动Redis、RabbitMQ的问题

在Manjaro上安装完Redis,做了如下配置,bind 0.0.0.0daemonize yesprotected-mode no并使用sudo systemctl restart redis.servicesudo systemctl status redis.service重启Redis并查看运行状态时发现并没有启动,这个时候有两种解决办法,一个是在修改/etc/redi...

2019-01-01 10:45:21 7581

原创 Manjaro基础开发环境配置

以下内容以最新的Manjaro 18.1为例,桌面环境为KDE使用USTC源,提高下载速度$ sudo pacman-mirrors -i -c China -m rank$ sudo pacman -Sy gvim$ sudo vim /etc/pacman.conf$ sudo pacman -Sy archlinuxcn-keyring$ sudo pacman -Syu安装...

2018-12-31 14:56:58 7415

原创 Vim插件之fzf.vim

与ctrlp一样,fzf.vim也是一个搜索工具,但它支持的东西更多,除了常见的文件搜索,MRU,还支持标记,snippets和主题等。安装方法如下Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }Plug 'junegunn/fzf.vim'添加上面两行到~/.vimrc,然后再:PlugInstall一下...

2018-12-31 14:42:12 6886

原创 Debian配置LNMP环境

先解释一下什么是LNMP,所谓LNMP就是在Linux环境下安装Nginx、MySQL和PHP开发环境。以下配置以Debian 9.6为例,Nginx首先安装Nginx,$ sudo apt-get install nginx在Stretch的源里面Nginx的版本为1.10,如果你觉得版本比较老,想尝试一下新版本,这可以在Backports里找到,安装方法如下$sudo apt-ge...

2018-12-30 16:32:20 1054

原创 Debian Jessie编译安装Python3.6及通过Backports安装软件

虽然Debian Jessie目前已经是old stable版本了,但它提供的Qt4环境以及默认的JDK7开发环境对于维护一些兼容性应用仍然具有吸引力,而且通过backports可以获取到较新的软件版本,下面就来介绍下如何启用backports,用root权限使用vim添加下面这句到/etc/apt/sources.listdeb http://ftp.debian.org/debian jes...

2018-12-23 16:16:41 1714

原创 Vim插件之python-mode

python-mode这款插件应该是Vim上写Python最佳辅助型插件了,集成了语法高亮,文档查阅,语法检查和重构等多种功能,相关的设置和快捷键也异常丰富繁多,这里从项目的文档中选取了大部分实用的设置并进行适当修改,如果你想要更详细地了解相关内容建议阅读文档,也建议阅读或者浏览一下文档"python-mode"开启警告let g:pymode_warnings = 0"保存文件时自动删除无用

2017-05-04 10:32:55 13540

原创 Vim插件之ack.vim

与ctrlp一样,ack.vim也是Vim上的一个搜索工具,主要用于项目内搜索,比如搜索某个函数之类的非常方便,ack还有一个基于The Silver Searcher的fork版本ag,速度比ack更快,但功能不如ack丰富,而且ack也允许调用ag进行搜索,因此更推荐用ack,要使用ag必须先在系统中安装The Silver Searcher,在Debian上只需执行$ sudo aptitud

2017-05-03 19:51:35 8552

原创 Vim插件之YouCompleteMe

YouCompleteMe,智能补全插件,安装完成ycm以后需要编译出库才能正常使用,它支持C、C++、C#、go、typescript、javascript、rust等语言的补全,这里只添加C家族的支持,编译方法如下,其他语言的请参考官网$ cd ~/.vim/bundle/YouCompleteMe$ ./install.py --clang-completer编译完成以后再把.ycm_ext

2017-04-04 00:42:02 8001 1

原创 Vim插件之ctrlp

ctrlp,模糊搜索工具,同类软件还有 ack,ag,fzf,ctrlp在速度上有些逊色,不过依赖少配置简单"ctrlplet g:ctrlp_map = '<leader>p'let g:ctrlp_cmd = 'CtrlP'map <leader>f :CtrlPMRU<CR>let g:ctrlp_custom_ignore = { \ 'dir': '\v[\/]\.(gi

2017-04-04 00:34:20 20551

原创 Vim插件之vim-autoformat

vim-autoformat是Vim的一款自动化格式代码工具,不过它只是一个框架,要使用它还需要相应语言的格式化工具,这里推荐几个常用的工具,分别是astyle,clang-format,python-pep8,python3-pep8,python-autopep8,yapf,在终端执行下面命令即可完成安装$ sudo aptitude install astyle clang-format py

2017-04-03 22:47:39 14116

原创 Vim插件之syntastic

syntastic是Vim上比较老牌的一款语法检查插件,虽然性能不及ale,但兼容性要更好一些,配置如下"syntastic"自动打开并跳转到第一个错误的地方let g:syntastic_error_symbol='✗'let g:syntastic_warning_symbol='➤'let g:syntastic_always_populate_loc_list = 1let g:s

2017-04-03 22:30:16 19661 5

原创 Vim插件之ale

ale是一款语法检查的插件,与syntastic类似,但有两个明显的优势,一个是语法检查是异步执行的,因此基本不会卡,另外一个是ale默认会使用所有检查工具并发的进行检查,但它只支持Vim 8.0以上的版本,配置如下&amp;quot;alelet g:ale_sign_column_always = 1let g:ale_set_highlights = 0let g:ale_sign_error = '✗'

2017-04-03 21:57:58 25985 6

原创 二叉树的前序遍历、中序遍历、后序遍历以及层序遍历的 Java 实现

树的节点定义如下package traversal;public class TreeNode&amp;lt;T&amp;gt; { public T value; public TreeNode&amp;lt;T&amp;gt; left; public TreeNode&amp;lt;T&amp;gt; right; public TreeNode(T value) { this.v

2019-03-14 12:20:58 924

原创 归并排序、快速排序和堆排序的 Java 实现

归并排序递归版package sort;public class MergeSortRecursively { public static void mergeSort(int[] array) { if (array == null || array.length &amp;lt;= 1) return; sort(array, 0...

2019-03-14 10:07:33 704 1

原创 Qt生成二维码

为了方便,这里使用的是nayuki写的库,下载之后将相应的文件include进来就可以。新建一个Qt项目,在项目目录下新建libs目录,然后将BitBuffer.hpp、BitBuffer.cpp、QrCode.hpp、QrCode.cpp、QrSegment.hpp和QrSegment.cpp放到libs目录下,下面是实例mainwindow.h#ifndef MAINWINDOW_H#d...

2018-12-27 18:27:38 1776

原创 CentOS 7安装配置

文章内容主要基于CentOS 7.6首先,应该配置一下国内的源,这能明显提高下载速度,推荐使用网易源或阿里源,具体可参考CentOS镜像使用帮助双系统安装完CentOS后,默认是无法打开Windows分区,开机的时候也没有Windows启动项的,如果要找回无法打开Windows分区,需要安装ntfs-3g,找回Windows启动项则需要使用grub2,运行如下命令即可sudo yum ins...

2018-12-21 16:29:48 777

原创 Qt 5读取、解析、生成和保存JSON文件

项目中用到了一些JSON的东西,为了方便就做了一层简单的封装方便以后使用,包括了JSON的读取、解析、生成和保存这些基本功能json.h文件#ifndef JSON_H#define JSON_H#include &amp;amp;amp;lt;QJsonArray&amp;amp;amp;gt;#include &amp;amp;amp;lt;QJsonDocument&amp;amp;amp;gt;#include &amp;amp;a

2018-12-19 10:04:25 2767 8

原创 Debian和Ubuntu安装配置MySQL 5.7

Debian对于Debian Stable(以最新的9.6为例)而言,安装MySQL比较简单,MySQL官方提供了APT源,导入即可,方法如下:前往官网下载APT包,然后使用如下命令进行安装$ sudo dpkg -i /PATH/version-specific-package-name.deb$ sudo apt-get update$ sudo apt-get install mys...

2018-12-14 10:00:17 5950

原创 Debian 9安装配置Redis

这里介绍一下Redis在Debian和Windows下的安装配置过程。Windows下较为简单,首先前往Windows下Redis下载地址下载压缩包,下载完成后,解压即可。为了方便,可以在解压后的目录下新建一个文件startup.cmd,再在里面添加如下内容redis-server.exe redis.windows.conf之后启动Redis,只需要双击startup.cmd即可。De...

2018-12-03 12:04:40 1546

原创 Debian搭建Qt 5开发环境

首先前往Qt官网下载Qt安装包,然后在终端下执行下面两条命令$ sudo chmod +x qt-opensource-linux-x64-5.9.2.run$ ./qt-opensource-linux-x64-5.9.2.run安装过程中需要选择安装目录,在这里我选择了/opt/Qt5.9.2这个目录。另外,安装过程中需要注意的一点是在可选组件中必须勾选上GCC套件,如果不这样做的话就需要在安

2017-11-18 19:49:21 11612 1

原创 解决“invalid conversion from void* to char*”和“deprecated conversion from string constant to 'char*' "

先看下面这个C语言程序,它的作用是使用动态存储分配来创建字符串的副本,如果内存分配失败,duplicate函数就返回空指针。#include <stdio.h>#include <stdlib.h>#include <string.h>char* duplicate(const char* s){ char* temp = malloc(strlen(s) + 1); if (t

2017-07-01 07:49:46 45088 2

原创 列写三角函数表(C语言实现)

下面是用函数指针实现的三角函数表,其中cos函数、sin函数和tan函数都已经在<math.h>中定义,函数tabulate中使用的函数ceil也属于<math.h>,当给定double型实参x时,函数ceil会返回大于或等于x的最小整数。#include <math.h>#include <stdio.h>// 传递函数指针f时,tabulate函数显示函数f的值void tabulate(d

2017-06-30 15:05:09 10780 2

原创 GCC使用简介

C程序中的文件名后缀 扩展名 文件内容 .a 静态对象库(文档) .c C语言源代码 .h C语言源代码的头文件 .i 无需处理的C语言源代码文件,编译过程的中间产物 .o 目标文件,编译过程的中间产物 .s 汇编语言代码(assembly language code),编译过程的中间产物 .so 共享对象库(shared object

2017-06-29 14:56:51 670

原创 分数的四则运算及化简(C语言实现)

下面这个程序使用C语言的结构体实现了分数的加减乘除四则运算,同时将结果最简化#include <stdio.h>struct fraction { int numerator; int denominator;};// 将分数化为最简形式struct fraction reduce_fraction(struct fraction f);// 分数的四则运算struct fra

2017-06-27 16:35:27 12499 2

原创 Vim插件之vimwiki

Emacs最强大的一个插件应该就是Org-mode了,在Vim上虽然也有vim-orgmode,但是翻阅一遍文档你就会发现一大堆的”Not yet implemented in vim-orgmode”,虽然vim-orgmode不能与Emacs的Org-mode相提并论,但这并不意味着Vim就没有能媲美Org-mode的插件,它就是vimwiki。 vimwiki能够写笔记构建工作流,写todo

2017-06-10 22:13:53 5130

原创 Vim插件之Conque GDB

之前曾经提到Vim下的Debug插件Vim插件之Vebugger,这款插件的主要特点就是支持语言多,这就意味着调试不同语言时不用记多套快捷键,缺点是目前支持Linux平台而且依赖于vimproc,下面介绍一个支持平台更多的调试插件Conque GDB,配置如下"Conque GDB"待调试文件位于屏幕上方let g:ConqueGdb_SrcSplit = 'above'"保存历史let g

2017-06-10 20:54:00 2865

原创 Vim插件之vim-clang和clang complete

在Vim所有的插件里面,YouCompleteMe 无疑是最强大的了,但安装也是异常的繁琐,在Windows平台上更加麻烦,下面介绍两个基于clang的插件可以部分替代YCM的功能。clang complete首先介绍clang complete,YCM对C家族的补全就是基于它,功能之强大不用多提,使用它必须先下载安装LLVM并将其添加到系统环境变量中(下面提到的vim-clang插件也需要这么做)

2017-06-10 20:24:58 5690

原创 解决clang"fatal error: 'stdio.h' file not found"问题

先看一下下面这个”hello world”程序#include <stdio.h>int main(void){ printf("hello!\n"); return 0;}在Windows下使用”gcc test.c”编译这个程序不会出现任何问题,但如果使用”clang test.c”编译,在控制台窗口就会报”fatal error: ‘stdio.h’ file not fo

2017-06-10 18:39:33 31368

原创 Vim为特定文件载入模板

编程开发实际上有许多重复性的工作,比如编写C/C++时有一些头文件是通用的,但在Vim里面每次创建新文件默认都是空白文件,手工输入其实挺繁琐的,下面介绍两种为特定文件载入模板的方法,仅以C为例,其他语言类似方法一这种方法的特点是以纯vimscript实现,跨平台autocmd BufNewFile *.c exec ":call SetHeader()" func! SetHeader()

2017-06-07 16:10:12 1695

原创 Firefox扩展推荐

Firefox是一款非常出色的开源跨平台浏览器,通过扩展和脚本你可以给它增加各种功能,而且还有各种主题让你对它进行美化,下面推荐一些实用的扩展 * uBlock Origin 去广告扩展,特点是资源占用少,而且能添加许多过滤器和自定义过滤 * Greasemonkey “伟大的油猴子”,让你可以运行许多实用的脚本,比如你可以直接观看各种VIP视频,下载网易云音乐,网页自动翻页等等,脚本推荐去Gr

2017-06-07 12:38:05 4847

原创 C语言字符处理经典小程序

首先,说一下原理:用循环逐个读取字符(所有字母均小写),并保存到一个一维字符数组中直到遇到结束标志为止。这里的结束标志分为三种情况,一是遇到换行符,二是超过了预设的句子长度(这里设为200),三则是遇到了终止字符(句号.,问号?,感叹号!)。然后再用一个循环搜索数组,找到最后一个单词的起始位置,打印这个单词。重复这个过程,直到到达数组的起始位置,最后打印终止字符(如果有的话)。源代码如下#inclu

2017-06-01 21:21:07 861 1

原创 自定义airline

这里所说的自定义主要包括两个方面,一是airline显示系统日期和时间,二是让tabline只显示文件名而忽略路径。 对于第一个,直接在vimrc写入"m,d,y,H,M分别表示月,日,年,时,分,也就是相应英文的首字母let g:airline_section_b = '%{strftime("%m/%d/%y - %H:%M")}'对于第二个首先确保已经开启了tabline,然后写入let

2017-05-29 01:04:29 1557

原创 解决Vim使用ctrlp+ag搜索不能扫描隐藏的文件和目录和自定义忽略文件问题

之前的文章 Vim插件之ctrlp 中提到过ctrlp调用外部工具ag提高搜索速度的方法,同时也指出了这种方法存在的两个问题,一是不能搜索隐藏文件,二是不能自定义忽略的文件,在仔细查阅ag(the_silver_searcher )的文档之后,现在这两个问题都解决了,下面说一下方法。 首先,在ag的文档中列出了它支持的所有参数,其中的--hidden参数就是用来搜索隐藏文件的,所以要搜索隐藏的文

2017-05-26 13:53:26 4062

原创 Vim插件之command-t

之前的文章Vim插件之ctrlp中曾经提到Vim下的模糊搜索工具ctrlp,ctrlp的优点是依赖少,其他插件对它的支持比较好,缺点是一个是速度慢,这个可以通过让ctrlp调用ag来提高搜索速度,另一点是原作者已经基本不更新了,现在是别人fork了这个项目后在维护着,所以大的功能更新不一定会有。相比之下,近几年,同类插件中有一些新秀就做得比较好,开发活跃,功能不断丰富。下面主要介绍一下command

2017-05-23 15:43:02 3837

原创 Vim无插件实现Markdown文件实时预览

之前的文章Vim插件之vim-instant-markdown曾提到Vim实时预览Markdown文件的方法,不过这个方法有个小缺点,就是依赖不是很好处理–Node.js和npm在很多发行版(系统)并没有默认安装,有的发行版(系统)上甚至没有这个包,因此下面介绍一种Vim不需要任何插件就能实时预览Markdown文件的方法,而且它还是跨平台的。 首先,需要安装Firefox,Windows用户在安

2017-05-22 22:37:29 6279 1

原创 Bash和Zsh开启vi-mode

Bash有两种操作模式,分别是emacs-mode和vi-mode,在默认情况下使用的是emacs-mode,通过修改~/.bashrc可以开启vi-mode,方法是在~/.bashrc中写入 set -o vi然后,在终端执行source ~/.bashrc或者是重启终端使配置生效。 之后,你每次打开终端,默认进入的都是insert-mode,按<Esc>则进入normal-mode。如果

2017-05-20 20:40:59 7276

原创 Vim实用技巧

屏幕滚动 按键 作用 Ctrl-D 向下滚动半屏 Ctrl-U 向上滚动半屏 Ctrl-F 向下滚动一屏 Ctrl-B 向上滚动一屏 zt 将光标所在行置于屏幕顶端 zz 将光标所在行置于屏幕中央 zb 将光标所在行置于屏幕底端光标移动 按键 作用 + 把光标移至下一行第一个非空白字符 - 把光标移至上一行第一个非

2017-05-20 15:39:09 617

原创 Debian安装Chrome和Chromium

由于一些历史原因,在绝大多数Linux发行版上默认的浏览器都是Firefox,Firefox是一款很伟大的软件,功能强悍而且开源,但Google开发的Chrome更快一些而且整合了很多Google自己的东西,常用Google的会觉得Chrome体验更好一些,下面介绍一下在Debian下安装Chrome和Chromium的方法 首先,编辑/etc/apt/sources.list文件并加入下面这句d

2017-05-20 10:53:21 22606

原创 解决Vim"UltiSnips requires py >= 2.7 or py3"

由于UltiSnips依赖于Python,所以有时候你安装完UltiSnips再重新打开Vim时会弹出一个窗口提示”Ultisnips requires py >= 2.7 or py3”,这种情况多发生在Windows上,因为Lunix上你从包管理器中安装Vim和Python它们是严格匹配的,而在Windows上即使你是从官网下载的Vim而且有+python/dyn和+python3/dyn仍然可

2017-05-16 22:05:09 6731 1

原创 Shell实用技巧

以下内容大部分来自于All commands,感谢那些分享的人们! Run the last command as root $ sudo !!Serve current directory tree at http://$HOSTNAME:8000/ $ python -m SimpleHTTPServerRuns previous command but replacing $

2017-05-16 11:01:22 792

Database Design for Mere Mortals Third Edition

Michael J. Hernandez’s best-selling Database Design for Mere Mortals® has earned worldwide respect as the clearest, simplest way to learn relational database design. Now, he’s made this hands-on, software-independent tutorial even easier, while ensuring that his design methodology is still relevant to the latest databases, applications, and best practices. Step by step, Database Design for Mere Mortals ® , Third Edition, shows you how to design databases that are soundly structured, reliable, and flexible, even in modern web applications. Hernandez guides you through everything from database planning to defining tables, fields, keys, table relationships, business rules, and views. You’ll learn practical ways to improve data integrity, how to avoid common mistakes, and when to break the rules.

2020-06-28

Beginning PHP and MySQL: From Novice to Professional, 5th Edition

Get started with PHP and MySQL programming: no experience necessary. This fifth edition of a classic best-seller includes detailed instructions for configuring the ultimate PHP 7 and MySQL development environment on all major platforms, complete coverage of the latest additions and improvements to t

2018-11-30

Spring Boot 2 Recipes: A Problem-Solution Approach

Solve all your Spring Boot 2 problems using complete and real-world code examples. When you start a new project, you’ll be able to copy the code and configuration files from this book, and then modify them for your needs. This can save you a great deal of work over creating a project from scratch. Using a problem-solution approach, Spring Boot 2 Recipes quickly introduces you to Pivotal's Spring Boot 2 micro-framework, then dives into code snippets on how to apply and integrate Spring Boot 2 with the Spring MVC web framework, Spring Web Sockets, and microservices. You'll also get solutions to common problems with persistence, integrating Spring Boot with batch processing, algorithmic programming via Spring Batch, and much more. Other recipes cover topics such as using and integrating Boot with Spring's enterprise services, Spring Integration, testing, monitoring and more. What You'll Learn Get reusable code recipes and snippets for the Spring Boot 2 micro-framework Discover how Spring Boot 2 integrates with other Spring APIs, tools, and frameworks Access Spring MVC and the new Spring Web Sockets for simpler web development Work with microservices for web services development and integration with your Spring Boot applications Add persistence and a data tier seamlessly to make your Spring Boot web application do more Integrate enterprise services to create a more complex Java application using Spring Boot Who This Book Is For Experienced Java and Spring programmers. Table of Contents Chapter 1: Spring Boot—Introduction Chapter 2: Spring Boot—Basics Chapter 3: Spring MVC Chapter 4: Spring MVC - Async Chapter 5: Spring WebFlux Chapter 6: Spring Security Chapter 7: Data Access Chapter 8: Java Enterprise Services Chapter 9: Messaging Chapter 10: Spring Boot Actuator Chapter 11: Packaging

2018-11-29

AWS System Administration: Best Practices for Sysadmins in the Amazon Cloud

With platforms designed for rapid adaptation and failure recovery such as Amazon Web Services, cloud computing is more like programming than traditional system administration. Tools for automatic scaling and instance replacement allow even small DevOps teams to manage massively scalable application infrastructures—if team members drop their old views of development and operations and start mastering automation. This comprehensive guide shows developers and system administrators how to configure and manage AWS services including EC2, CloudFormation, Elastic Load Balancing, S3, and Route 53. Sysadms will learn will learn to automate their favorite tools and processes; developers will pick up enough ops knowledge to build a robust and resilient AWS application infrastructure. Launch instances with EC2 or CloudFormation Securely deploy and manage your applications with AWS tools Learn to automate AWS configuration management with Python and Puppet Deploy applications with Auto Scaling and Elastic Load Balancing Explore approaches for deploying application and infrastructure updates Save time on development and operations with reusable components Learn strategies for managing log files in AWS environments Configure a cloud-aware DNS service with Route 53 Use AWS CloudWatch to monitor your infrastructure and applications

2018-11-10

Jenkins 2: Up and Running

Design, implement, and execute continuous delivery pipelines with a level of flexibility, control, and ease of maintenance that was not possible with Jenkins before. With this practical book, build administrators, developers, testers, and other professionals will learn how the features in Jenkins 2 let you define pipelines as code, leverage integration with other key technologies, and create automated, reliable pipelines to simplify and accelerate your DevOps environments. Author Brent Laster shows you how Jenkins 2 is significantly different from the more traditional, web-only versions of this popular open source automation platform. If you’re familiar with Jenkins and want to take advantage of the new technologies to transform your legacy pipelines or build new modern, automated continuous delivery environments, this is your book. Control pipeline execution flow with a domain-specific language Integrate Jenkins with messaging services and advanced email methods Harness best practices and new methods for controlling access and security Explore the structure, implementation, and use of shared pipeline libraries Use a declarative structure to simplify creating pipelines as code Leverage new and existing project types in Jenkins Understand and use the new Blue Ocean graphical interface Take advantage of the capabilities of the underlying OS in your pipeline Integrate analysis tools, artifact management, and containers

2018-11-10

Cloud Native Infrastructure

If you’re considering the use of cloud native applications and microservices, you also need an infrastructure with the same elasticity and scalability of the applications they’re running. This practical guide shows you how to design and maintain infrastructure capable of managing the full lifecycle of these implementations. Engineers Justin Garrison and Kris Nova reveal hard-earned lessons on architecting infrastructure for massive scale and best in class monitoring, alerting, and troubleshooting. The authors focus on Cloud Native Computing Foundation projects and explain where each is crucial to managing modern applications. Understand the fundamentals of cloud native application design, and how it differs from traditional application design Learn how cloud native infrastructure is different from traditional infrastructure Manage application lifecycles running on cloud native infrastructure, using Kubernetes for application deployment, scaling, and upgrades Monitor cloud native infrastructure and applications, using fluentd for logging and prometheus + graphana for visualizing data Debug running applications and learn how to trace a distributed application and dig deep into a running system with OpenTracing

2018-11-10

Absolute FreeBSD: The Complete Guide to FreeBSD, 3rd Edition

This updated edition of Michael W. Lucas’ definitive volume on FreeBSD-based systems adds coverage of modern disks, the ZFS filesystem IPv6, redesigned jail and packaging systems, and virtualization, among dozens of new features added in the last 10 years. FreeBSD is the muscle behind companies like Netflix and EMC. Any place where someone does heavy lifting on the Internet, you’ll find FreeBSD. This newly revised edition of Absolute FreeBSD brings FreeBSD’s strengths to bear on your problems and covers FreeBSD’s newest features, all in the inimitable style that has made author Michael W. Lucas’ system administration books so popular. Any computer system is only as good as the system administrator’s knowledge. Absolute FreeBSD teaches you everything you need to know about managing FreeBSD systems, from installation, configuration, and taking the system from “just working” to “working well.” A cohesive focus on service delivery and best practice means that you can apply much of the book to other operating systems. Absolute FreeBSD dives deep into server management, taking you beyond just making things work and into understanding why they work. You’ll learn: How to best install FreeBSD to meet your needs Which filesystem to use in your environment How to back up and restore critical data How to tweak the kernel, and when not to Network configuration, from activating interfaces to selecting congestion control algorithms How to manage UFS, ZFS, and other critical filesystems FreeBSD’s software packaging system, including how to build your own package repository How and when to upgrade Techniques to build your own FreeBSD Advanced security features like blacklistd and packet filtering How to monitor and adjust performance Container-style virtualization with jails Diskless systems Panic management and bug reporting With Absolute FreeBSD readers will get the solid introduction they need while fans of the earlier editions will expand their skills even further.

2018-11-10

The Essential Guide to HTML5

Gain a deep, practical knowledge of HTML and JavaScript that will provide an introduction to programming and enable you to build interactive websites. This completely updated second edition explains HTML, JavaScript and CSS in the context of working examples and contains full-color screen shots of the programs in action. You’ll begin at an introductory level, learning the essentials of HTML5 and JavaScript and programming techniques. Each chapter features either a familiar game such as Hangman, Rock-Paper-Scissors, Craps, Memory, and Blackjack, or a simple type of game, such as a quiz, a maze, or animated simulations. You’ll develop solid programming skills that will help when learning other programming languages. Each chapter contains tables revealing the structure of the program with comments for each line of code. These examples demonstrate the features introduced with HTML5. You’ll see how to use canvas elements for line drawing. You can include your own audio and video clips, directly controlled by your JavaScript code. For example, the reward for correct completion of a quiz can be the playing of an audio clip and a video clip. You’ll also learn how to use localStorage to store high scores or game preferences on a user’s computer for retrieval next time they play. The Essential Guide to HTML5 explores all of this and more. What You’ll Learn Understand HTML 5 concepts with the help of easy-to-grasp, appealing examples Use HTML5 to explore new avenues for application and game development on the web Review important new elements of HTML 5 Build, test, and upload simple games to a web site. Who This Book Is For Both absolute beginners and users with some knowledge of HTML who want to learn the new HTML5 features

2018-11-10

Linux for Developers

Linux for Developers shows you how to start writing great code for Linux, whether you’re a Linux user with little or no coding experience, or an experienced Windows programmer. Leading IT trainer/author William “Bo” Rothwell begins with a clear and up-to-date review of modern open source software, including the licensing arrangements and tradeoffs all developers need to understand. He presents essential skills for both Linux command line and GUI environments, introducing text editors and other tools for efficient coding. Building on this knowledge, Rothwell introduces scripting tools such as Bash, Python, and Perl, as well as traditional object-oriented programming languages such as Java, C++, and C. Finally, he presents a full section on the powerful Git version control system, teaching skills you can use in Linux and many other environments. Access Linux systems, use GUIs, and work at the command line Learn how Linux organizes files and navigate its filesystem Use basic developer commands such as gzip and grep Edit programs with vi and vim, and explore alternative editors Perform basic sysadmin tasks that developers often need to handle Compare Linux languages to choose the best one for each task Write Bash scripts that interact with users or other shell features Program with Python and Perl: flow control, variables, and more Understand Linux features related to building C, C++, and Java programs Stay on top of complex projects with GIT revision control Work in GIT: staging, committing, branches, diffs, merges, and patches Manage local and remote GIT repositories This guide’s modular coverage helps you quickly access whatever information you need right now.

2018-11-06

Ethereum for Architects and Developers

Explore the Ethereum ecosystem step by step with extensive theory, labs, and live use cases. This book takes you through BlockChain concepts; decentralized applications; Ethereum’s architecture; Solidity smart contract programming with examples; and testing, debugging, and deploying smart contracts on your local machine and on the cloud. You’ll cover best practices for writing contracts with ample examples to allow you to write high-quality contracts with optimal usage of fuel. In later chapters, Ethereum for Architects and Developers covers use cases from different business areas, such as finance, travel, supply-chain, insurance, and land registry. Many of these sectors are explained with flowcharts, diagrams, and sample code that you can refer to and further enhance in live projects. By the end of the book, you will have enough information to use Ethereum to create value for your business processes and build foolproof data storage for smoother execution of business. What You Will Learn Discover key BlockChain concepts Master the architecture, building blocks, and ecosystem of Ethereum Develop smart contracts from scratch Debug, test, and deploy to test Take advantage of Ethereum in your business area Who This Book Is For BlockChain developers and architects wanting to develop decentralized Ethereum applications or learn its architecture.

2018-11-03

Learning Node.js Development

A comprehensive, easy-to-follow guide to creating complete Node apps and understanding how to build, deploy, and test your own apps. Learning Node.js Development is a practical, project-based book that provides you with all you need to get started as a Node.js developer. Node is a ubiquitous technology on the modern web, and an essential part of any web developers’ toolkit. If you are looking to create real-world Node applications, or you want to switch careers or launch a side project to generate some extra income, then you’re in the right place. This book has been written around a single goal—turning you into a professional Node developer capable of developing, testing, and deploying real-world production applications. Learning Node.js Development is built from the ground up around the latest version of Node.js (version 9.x.x). You’ll be learning all the cutting-edge features available only in the latest software versions. This book cuts through the mass of information available around Node and delivers the essential skills that you need to become a Node developer. It takes you through creating complete apps and understanding how to build, deploy, and test your own Node apps. It maps out everything in a comprehensive, easy-to-follow package designed to get you up and running quickly. What You Will Learn Learn the fundamentals of Node Build apps that respond to user input Master working with servers Learn how to test and debug applications Deploy and update your apps in the real world Create responsive asynchronous web applications

2018-10-29

Mastering Spring Boot 2.0

Learn to develop, test, and deploy your Spring Boot distributed application and explore various best practices. Spring is one of the best frameworks on the market for developing web, enterprise, and cloud ready software. Spring Boot simplifies the building of complex software dramatically by reducing the amount of boilerplate code, and by providing production-ready features and a simple deployment model. This book will address the challenges related to power that come with Spring Boot’s great configurability and flexibility. You will understand how Spring Boot configuration works under the hood, how to overwrite default configurations, and how to use advanced techniques to prepare Spring Boot applications to work in production. This book will also introduce readers to a relatively new topic in the Spring ecosystem – cloud native patterns, reactive programming, and applications. Get up to speed with microservices with Spring Boot and Spring Cloud. Each chapter aims to solve a specific problem or teach you a useful skillset. By the end of this book, you will be proficient in building and deploying your Spring Boot application. What you will learn Build logically structured and highly maintainable Spring Boot applications Configure RESTful microservices using Spring Boot Make the application production and operation-friendly with Spring Actuator Build modern, high-performance distributed applications using cloud patterns Manage and deploy your Spring Boot application to the cloud (AWS) Monitor distributed applications using log aggregation and ELK

2018-10-22

R的极客理想 高级开发篇 + R的极客理想 工具篇 + R的极客理想 量化投资篇

R的极客理想 高级开发篇 + R的极客理想 工具篇 + R的极客理想 量化投资篇

2018-10-22

Think Data Structures: Algorithms and Information Retrieval in Java

If you’re a student studying computer science or a software developer preparing for technical interviews, this practical book helps you learn and review the most important ideas in software engineering—data structures and algorithms—in a way that’s clearer, more concise, and more engaging than other materials. You’ll explore the important classes in the Java collections framework (JCF), how they’re are implemented, and how they are expected to perform. By emphasizing practical knowledge and skills over theory, author Allen Downey shows you how to use data structures to implement efficient algorithms, and then analyze and measure their performance. You’ll also: Learn good software engineering practices and modern data structures Get an engaging case study—the design and implementation of a simple web search engine Practice software engineering skills by working on a series of engaging exercises in each chapter

2018-10-22

TensorFlow Deep Learning Projects

TensorFlow Deep Learning Projects: 10 real-world projects on computer vision, machine translation, chatbots, and reinforcement learning Leverage the power of Tensorflow to design deep learning systems for a variety of real-world scenarios Key Features Build efficient deep learning pipelines using the popular Tensorflow framework Train neural networks such as ConvNets, generative models, and LSTMs Includes projects related to Computer Vision, stock prediction, chatbots and more Book Description TensorFlow is one of the most popular frameworks used for machine learning and, more recently, deep learning. It provides a fast and efficient framework for training different kinds of deep learning models, with very high accuracy. This book is your guide to master deep learning with TensorFlow with the help of 10 real-world projects. TensorFlow Deep Learning Projects starts with setting up the right TensorFlow environment for deep learning. Learn to train different types of deep learning models using TensorFlow, including Convolutional Neural Networks, Recurrent Neural Networks, LSTMs, and Generative Adversarial Networks. While doing so, you will build end-to-end deep learning solutions to tackle different real-world problems in image processing, recommendation systems, stock prediction, and building chatbots, to name a few. You will also develop systems that perform machine translation, and use reinforcement learning techniques to play games. By the end of this book, you will have mastered all the concepts of deep learning and their implementation with TensorFlow, and will be able to build and train your own deep learning models with TensorFlow confidently. What you will learn Set up the TensorFlow environment for deep learning Construct your own ConvNets for effective image processing Use LSTMs for image caption generation Forecast stock prediction accurately with an LSTM architecture Learn what semantic matching is by detecting duplic

2018-10-19

Building RESTful Web Services with Java EE 8

Learn the fundamentals of Java EE 8 APIs to build effective web services Java Enterprise Edition is one of the leading application programming platforms for enterprise Java development. With Java EE 8 finally released and the first application servers now available, it is time to take a closer look at how to develop modern and lightweight web services with the latest API additions and improvements. Building RESTful Web Services with Java EE 8 is a comprehensive guide that will show you how to develop state-of-the-art RESTful web services with the latest Java EE 8 APIs. You will begin with an overview of Java EE 8 and the latest API additions and improvements. You will then delve into the details of implementing synchronous RESTful web services and clients with JAX-RS. Next up, you will learn about the specifics of data binding and content marshalling using the JSON-B 1.0 and JSON-P 1.1 APIs. This book also guides you in leveraging the power of asynchronous APIs on the server and client side, and you will learn to use server-sent events (SSEs) for push communication. The final section covers advanced web service topics such as validation, JWT security, and diagnosability. By the end of this book, you will have implemented several working web services and have a thorough understanding of the Java EE 8 APIs required for lightweight web service development. What you will learn Dive into the latest Java EE 8 APIs relevant for developing web services Use the new JSON-B APIs for easy data binding Understand how JSON-P API can be used for flexible processing Implement synchronous and asynchronous JAX-RS clients Use server-sent events to implement server-side code Secure Java EE 8 web services with JSON Web Tokens

2018-10-19

Hands-On Transfer Learning with Python

Deep learning simplified by taking supervised, unsupervised, and reinforcement learning to the next level using the Python ecosystem Transfer learning is a machine learning (ML) technique where knowledge gained during training a set of problems can be used to solve other similar problems. The purpose of this book is two-fold; firstly, we focus on detailed coverage of deep learning (DL) and transfer learning, comparing and contrasting the two with easy-to-follow concepts and examples. The second area of focus is real-world examples and research problems using TensorFlow, Keras, and the Python ecosystem with hands-on examples. The book starts with the key essential concepts of ML and DL, followed by depiction and coverage of important DL architectures such as convolutional neural networks (CNNs), deep neural networks (DNNs), recurrent neural networks (RNNs), long short-term memory (LSTM), and capsule networks. Our focus then shifts to transfer learning concepts, such as model freezing, fine-tuning, pre-trained models including VGG, inception, ResNet, and how these systems perform better than DL models with practical examples. In the concluding chapters, we will focus on a multitude of real-world case studies and problems associated with areas such as computer vision, audio analysis and natural language processing (NLP). By the end of this book, you will be able to implement both DL and transfer learning principles in your own systems. What you will learn Set up your own DL environment with graphics processing unit (GPU) and Cloud support Delve into transfer learning principles with ML and DL models Explore various DL architectures, including CNN, LSTM, and capsule networks Learn about data and network representation and loss functions Get to grips with models and strategies in transfer learning Walk through potential challenges in building complex transfer learning models from scratch Explore real-world research problems related to computer vision and audio analysis Understand how transfer learning can be leveraged in NLP

2018-10-18

Angular: Up and Running: Learning Angular, Step by Step

This book will demystify Angular as a framework, as well as provide clear instructions and examples on how to get started with writing scalable Angular applications. Angular: Up & Running covers most of the major pieces of Angular, but in a structured manner that is generally used in hands-on traini

2018-10-12

Microservices in Action

Microservices promise a better way to sustainably deliver business impact. Rather than a single monolithic unit, applications built in this style are composed from loosely-coupled, autonomous services. Microservices in Action is a practical book about building and deploying microservice-based applications. Written for developers and architects with a solid grasp of service-oriented development, it tackles the challenge of putting microservices into production. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. Table of Contents Part 1: The lay of the land Chapter 1 Designing And Running Microservices Chapter 2 Microservices At Simplebank Part 2: Design Chapter 3 Architecture Of A Microservice Application Chapter 4 Designing New Features Chapter 5 Transactions And Queries In Microservices Chapter 6 Designing Reliable Services Chapter 7 Building A Reusable Microservice Framework Part 3: Deployment Chapter 8 Deploying Microservices Chapter 9 Deployment With Containers And Schedulers Chapter 10 Building A Delivery Pipeline For Microservices Part 4: Observability and ownership Chapter 11 Building A Monitoring System Chapter 12 Using Logs And Traces To Understand Behavior Chapter 13 Building Microservice Teams Appendix: Installing Jenkins on Minikube

2018-10-08

Spring in Action, 5th Edition

Spring Framework has been making Java developers more productive and successful for over a dozen years, and it shows no signs of slowing down! Spring in Action, 5th Edition is the fully-updated revision of Manning's bestselling Spring in Action. This new edition includes all Spring 5.0 updates, along with new examples on reactive programming, Spring WebFlux, and microservices. Readers will also find the latest Spring best practices, including Spring Boot for application setup and configuration. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. Table of Contents Part 1 Foundational Spring Chapter 1 Getting Started With Spring Chapter 2 Developing Web Applications Chapter 3 Working With Data Chapter 4 Securing Spring Chapter 5 Working With Configuration Properties Part 2 Integrated Spring Chapter 6 C Reating Rest Services Chapter 7 Consuming Rest Services Chapter 8 Sending Messages Asynchronously Chapter 9 Integrating Spring Part 3 Reactive Spring Chapter 10 Introducing Reactor Chapter 11 Developing Reactive Apis Chapter 12 Persisting Data Reactively Part 4 Cloud-native Spring Chapter 13 Discovering Services Chapter 14 Managing Configuration Chapter 15 Handling Failure And Latency Part 5 Deployed Spring Chapter 16 Working With Spring Boot Actuator Chapter 17 Administering Spring Chapter 18 Monitoring Spring With Jmx Chapter 19 Deploying Spring Appendix Bootstrapping Spring applications

2018-10-08

Natural Language Processing in Action

Summary Natural Language Processing in Action is your guide to creating machines that understand human language using the power of Python with its ecosystem of packages dedicated to NLP and AI. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Recent advances in deep learning empower applications to understand text and speech with extreme accuracy. The result? Chatbots that can imitate real people, meaningful resume-to-job matches, superb predictive search, and automatically generated document summaries—all at a low cost. New techniques, along with accessible tools like Keras and TensorFlow, make professional-quality NLP easier than ever before. About the Book Natural Language Processing in Action is your guide to building machines that can read and interpret human language. In it, you'll use readily available Python packages to capture the meaning in text and react accordingly. The book expands traditional NLP approaches to include neural networks, modern deep learning algorithms, and generative techniques as you tackle real-world problems like extracting dates and names, composing text, and answering free-form questions. What's inside Some sentences in this book were written by NLP! Can you guess which ones? Working with Keras, TensorFlow, gensim, and scikit-learn Rule-based and data-based NLP Scalable pipelines About the Reader This book requires a basic understanding of deep learning and intermediate Python skills. About the Author Hobson Lane, Cole Howard, and Hannes Max Hapke are experienced NLP engineers who use these techniques in production. Table of Contents PART 1 - WORDY MACHINES Chapter 1. Packets Of Thought (Nlp Overview) Chapter 2. Build Your Vocabulary (Word Tokenization) Chapter 3. Math With Words (Tf-Idf Vectors) Chapter 4. Finding Meaning In Word Counts (Semantic Analysis) PART 2 - DEEPER LEARNING (NEURAL NETWORKS) Chapter 1. Baby Steps

2019-04-25

Artificial Neural Networks with Java

Use Java to develop neural network applications in this practical book. After learning the rules involved in neural network processing, you will manually process the first neural network example. This covers the internals of front and back propagation, and facilitates the understanding of the main principles of neural network processing. Artificial Neural Networks with Java also teaches you how to prepare the data to be used in neural network development and suggests various techniques of data preparation for many unconventional tasks. The next big topic discussed in the book is using Java for neural network processing. You will use the Encog Java framework and discover how to do rapid development with Encog, allowing you to create large-scale neural network applications. The book also discusses the inability of neural networks to approximate complex non-continuous functions, and it introduces the micro-batch method that solves this issue. The step-by-step approach includes plenty of examples, diagrams, and screen shots to help you grasp the concepts quickly and easily. What You Will Learn Prepare your data for many different tasks Carry out some unusual neural network tasks Create neural network to process non-continuous functions Select and improve the development model

2019-04-15

PHP7内核剖析

PHP作为最流行的语言之一,自第一个版本发布至今的二十几年里经历了多次重大改进,PHP7版本最大的特色在于其性能上的突破,比PHP5快了一倍。目前PHP7已经得到了广泛应用,越来越多的项目从PHP5迁移到了PHP7。目前,关于PHP内核的资料非常有限,《PHP7内核剖析》以当前最为流行的PHP7版本为基础,系统性地、尽可能详细地介绍PHP语言底层的实现,旨在帮助更多的开发者进一步理解PHP,参与到PHP的实现中,为未来PHP的发展贡献一份力量!全书内容主要包括PHP数据类型的实现、PHP的编译及执行、PHP内存的管理、函数及面向对象的实现、PHP基础语法的实现,以及PHP扩展的开发。《PHP7内核剖析》适用于有一定C语言基础的PHP高级工程师,或者想了解PHP7的内部实现、扩展开发的工程师。

2019-04-05

Serious Python

An indispensable collection of practical tips and real-world advice for tackling common Python problems and taking your code to the next level. Features interviews with high-profile Python developers who share their tips, tricks, best practices, and real-world advice gleaned from years of experience. Sharpen your Python skills as you dive deep into the Python programming language with Serious Python. You’ll cover a range of advanced topics like multithreading and memorization, get advice from experts on things like designing APIs and dealing with databases, and learn Python internals to help you gain a deeper understanding of the language itself. Written for developers and experienced programmers, Serious Python brings together over 15 years of Python experience to teach you how to avoid common mistakes, write code more efficiently, and build better programs in less time. As you make your way through the book’s extensive tutorials, you’ll learn how to start a project and tackle topics like versioning, layouts, coding style, and automated checks. You’ll learn how to package your software for distribution, optimize performance, use the right data structures, define functions efficiently, pick the right libraries, build future-proof programs, and optimize your programs down to the bytecode. You’ll also learn how to: Make and use effective decorators and methods, including abstract, static, and class methods Employ Python for functional programming using generators, pure functions, and functional functions Extend flake8 to work with the abstract syntax tree (AST) to introduce more sophisticated automatic checks into your programs Apply dynamic performance analysis to identify bottlenecks in your code Work with relational databases and effectively manage and stream data with PostgreSQL If you’ve been looking for a way to take your Python skills from good to great, Serious Python will help you get there. Learn from the experts and get seriously good at Python with Serious Python!

2019-03-11

Serverless Applications with Node.js

Summary Serverless Applications with Node.js walks you through building serverless apps on AWS using JavaScript. Inside, you'll discover what Claudia.js brings to the table as you build and deploy a scalable event-based serverless application, based around a pizzeria that's fully integrated with AWS services, including Lambda and API Gateway. Each chapter is filled with exercises, examples, tips, and more to make sure you're ready to bring what you've learned into your own work. Foreword by Gojko Adzic. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology The benefits of cloud-hosted serverless web apps are undeniable: lower complexity, quicker time to market, and easier scalability than traditional, server-dependent designs. And thanks to JavaScript support in AWS Lambda and powerful new serverless API tools like the Claudia.js library, you can build and deploy serverless apps end to end without learning a new language. About the Book Serverless Applications with Node.js teaches you to design and build serverless web apps on AWS using JavaScript, Node, and Claudia.js. You'll master the basics of writing AWS Lambda functions, along with core serverless patterns like API Gateway. Along the way, you'll practice your new skills by building a working chatbot and a voice assistant with Amazon Alexa. You'll also discover techniques for migrating existing apps to a serverless platform. What's inside Authentication and database storage Asynchronous functions Interesting real-world examples Developing serverless microservices About the Reader For web developers comfortable with JavaScript and Node.js. About the Author Slobodan Stojanović and Aleksandar Simović are AWS Serverless Heroes and core contributors to the Claudia.js project. They are also coauthors of Desole, an open source serverless errortracking tool, and the lead developers of Claudia Bot Builder. Table of Contents PART 1 - Serverless pizzeria Chapter 1 Introduction To Serverless With Claudia Chapter 2 Building Your First Serverless Api Chapter 3 Asynchronous Work Is Easy, We Promise() Chapter 4 Pizza Delivery: Connecting An External Service Chapter 5 Houston, We Have A Problem! Chapter 6 Level Up Your Api Chapter 7 Working With Files PART 2 - Let's talk Chapter 1. When Pizza Is One Message Away: Chatbots Chapter 2. Typing... Async And Delayed Responses Chapter 3. Jarvis, I Mean Alexa, Order Me A Pizza Chapter 4. Paying For Pizza Chapter 5. Migrating To Serverless Chapter 6. Real-World Case Studies Appendix A - Installation And Configuration Appendix B - Facebook Messenger, Twilio, And Alexa Configuration Appendix C - Stripe And Mongodb Setup Appendix D - The Pizza Recipe

2019-02-15

Coding Games in Python

A visual step-by-step guide to writing code in Python. Beginners and experienced programmers can use Python to build and play computer games, from mind-bending brainteasers to crazy action games with explosive sound effects and 3-D graphics. Each chapter in Coding Games in Python shows how to construct a complete working game in simple numbered steps. The book teaches how to use freely available resources, such as PyGame Zero and Blender, to add animations, music, scrolling backgrounds, 3-D scenery, and other pieces of professional wizardry to games. After building a game, instructions show how to adapt it using secret hacks and cheat codes. Instructions are illustrated with zany Minecraft-style pixel art. Master the key concepts that programmers need to write code–not just in Python, but in all programming languages. Find out what bugs, loops, flags, strings, tuples, toggles, and turtles are. Learn how to plan and design the ultimate game–and then play it to destruction as you test and debug it. With coding theory interwoven into the instructions for building each game, learning coding is made effortless and fun.

2019-02-15

Functional Programming in C++

Functional Programming in C++ teaches developers the practical side of functional programming and the tools that C++ provides to develop software in the functional style. This in-depth guide is full of useful diagrams that help you understand FP concepts and begin to think functionally. Well-written code is easier to test and reuse, simpler to parallelize, and less error prone. Mastering the functional style of programming can help you tackle the demands of modern apps and will lead to simpler expression of complex program logic, graceful error handling, and elegant concurrency. C++ supports FP with templates, lambdas, and other core language features, along with many parts of the STL. Functional Programming in C++ helps you unleash the functional side of your brain, as you gain a powerful new perspective on C++ coding. You’ll discover dozens of examples, diagrams, and illustrations that break down the functional concepts you can apply in C++, including lazy evaluation, function objects and invokables, algebraic data types, and more. As you read, you’ll match FP techniques with practical scenarios where they offer the most benefit. What’s inside Writing safer code with no performance penalties Explicitly handling errors through the type system Extending C++ with new control structures Composing tasks with DSLs

2019-02-15

Foundations of Machine Learning, 2nd Edition

A new edition of a graduate-level machine learning textbook that focuses on the analysis and theory of algorithms. This book is a general introduction to machine learning that can serve as a textbook for graduate students and a reference for researchers. It covers fundamental modern topics in machine learning while providing the theoretical basis and conceptual tools needed for the discussion and justification of algorithms. It also describes several key aspects of the application of these algorithms. The authors aim to present novel theoretical tools and concepts while giving concise proofs even for relatively advanced topics. Foundations of Machine Learning is unique in its focus on the analysis and theory of algorithms. The first four chapters lay the theoretical foundation for what follows; subsequent chapters are mostly self-contained. Topics covered include the Probably Approximately Correct (PAC) learning framework; generalization bounds based on Rademacher complexity and VC-dimension; Support Vector Machines (SVMs); kernel methods; boosting; on-line learning; multi-class classification; ranking; regression; algorithmic stability; dimensionality reduction; learning automata and languages; and reinforcement learning. Each chapter ends with a set of exercises. Appendixes provide additional material including concise probability review. This second edition offers three new chapters, on model selection, maximum entropy models, and conditional entropy models. New material in the appendixes includes a major section on Fenchel duality, expanded coverage of concentration inequalities, and an entirely new entry on information theory. More than half of the exercises are new to this edition.

2019-01-30

Machine Learning Using R

Examine the latest technological advancements in building a scalable machine-learning model with big data using R. This second edition shows you how to work with a machine-learning algorithm and use it to build a ML model from raw data. You will see how to use R programming with TensorFlow, thus avoiding the effort of learning Python if you are only comfortable with R. As in the first edition, the authors have kept the fine balance of theory and application of machine learning through various real-world use-cases which gives you a comprehensive collection of topics in machine learning. New chapters in this edition cover time series models and deep learning. What You’ll Learn Understand machine learning algorithms using R Master the process of building machine-learning models Cover the theoretical foundations of machine-learning algorithms See industry focused real-world use cases Tackle time series modeling in R Apply deep learning using Keras and TensorFlow in R

2018-12-14

Machine Learning Applications Using Python

Gain practical skills in machine learning for finance, healthcare, and retail. This book uses a hands-on approach by providing case studies from each of these domains: you’ll see examples that demonstrate how to use machine learning as a tool for business enhancement. As a domain expert, you will not only discover how machine learning is used in finance, healthcare, and retail, but also work through practical case studies where machine learning has been implemented. Machine Learning Applications Using Python is divided into three sections, one for each of the domains (healthcare, finance, and retail). Each section starts with an overview of machine learning and key technological advancements in that domain. You’ll then learn more by using case studies on how organizations are changing the game in their chosen markets. This book has practical case studies with Python code and domain-specific innovative ideas for monetizing machine learning. What You Will Learn Discover applied machine learning processes and principles Implement machine learning in areas of healthcare, finance, and retail Avoid the pitfalls of implementing applied machine learning Build Python machine learning examples in the three subject areas

2018-12-14

Network Analysis Using Wireshark 2 Cookbook

Over 100 recipes to analyze and troubleshoot network problems using Wireshark 2 This book contains practical recipes on troubleshooting a data communications network. This second version of the book focuses on Wireshark 2, which has already gained a lot of traction due to the enhanced features that it offers to users. The book expands on some of the subjects explored in the first version, including TCP performance, network security, Wireless LAN, and how to use Wireshark for cloud and virtual system monitoring. You will learn how to analyze end-to-end IPv4 and IPv6 connectivity failures for Unicast and Multicast traffic using Wireshark. It also includes Wireshark capture files so that you can practice what you’ve learned in the book. You will understand the normal operation of E-mail protocols and learn how to use Wireshark for basic analysis and troubleshooting. Using Wireshark, you will be able to resolve and troubleshoot common applications that are used in an enterprise network, like NetBIOS and SMB protocols. Finally, you will also be able to measure network parameters, check for network problems caused by them, and solve them effectively. By the end of this book, you’ll know how to analyze traffic, find patterns of various offending traffic, and secure your network from them. What You Will Learn Configure Wireshark 2 for effective network analysis and troubleshooting Set up various display and capture filters Understand networking layers, including IPv4 and IPv6 analysis Explore performance issues in TCP/IP Get to know about Wi-Fi testing and how to resolve problems related to wireless LANs Get information about network phenomena, events, and errors Locate faults in detecting security failures and breaches in networks

2018-12-14

Machine Intelligence and Signal Analysis

The book covers the most recent developments in machine learning, signal analysis, and their applications. It covers the topics of machine intelligence such as: deep learning, soft computing approaches, support vector machines (SVMs), least square SVMs (LSSVMs) and their variants; and covers the topics of signal analysis such as: biomedical signals including electroencephalogram (EEG), magnetoencephalography (MEG), electrocardiogram (ECG) and electromyogram (EMG) as well as other signals such as speech signals, communication signals, vibration signals, image, and video. Further, it analyzes normal and abnormal categories of real-world signals, for example normal and epileptic EEG signals using numerous classification techniques. The book is envisioned for researchers and graduate students in Computer Science and Engineering, Electrical Engineering, Applied Mathematics, and Biomedical Signal Processing.

2018-12-11

Technology Strategy Patterns: Architecture as Strategy

Technologists who want their ideas heard, understood, and funded are often told to speak the language of business—without really knowing what that is. This book’s toolkit provides architects, product managers, technology managers, and executives with a shared language—in the form of repeatable, practical patterns and templates—to produce great technology strategies. Author Eben Hewitt developed 39 patterns over the course of a decade in his work as CTO, CIO, and chief architect for several global tech companies. With these proven tools, you can define, create, elaborate, refine, and communicate your architecture goals, plans, and approach in a way that executives can readily understand, approve, and execute. This book covers: Architecture and strategy: Adopt a strategic architectural mindset to make a meaningful material impact Creating your strategy: Define the components of your technology strategy using proven patterns Communicating the strategy: Convey your technology strategy in a compelling way to a variety of audiences Bringing it all together: Employ patterns individually or in clusters for specific problems; use the complete framework for a comprehensive strategy

2018-12-09

Java Program Design: Principles, Polymorphism, and Patterns

Get a grounding in polymorphism and other fundamental aspects of object-oriented program design and implementation, and learn a subset of design patterns that any practicing Java professional simply must know in today’s job climate. Java Program Design presents program design principles to help practicing programmers up their game and remain relevant in the face of changing trends and an evolving language. The book enhances the traditional design patterns with Java’s new functional programming features, such as functional interfaces and lambda expressions. The result is a fresh treatment of design patterns that expands their power and applicability, and reflects current best practice. The book examines some well-designed classes from the Java class library, using them to illustrate the various object-oriented principles and patterns under discussion. Not only does this approach provide good, practical examples, but you will learn useful library classes you might not otherwise know about. The design of a simplified banking program is introduced in chapter 1 in a non-object-oriented incarnation and the example is carried through all chapters. You can see the object orientation develop as various design principles are progressively applied throughout the book to produce a refined, fully object-oriented version of the program in the final chapter. What You’ll Learn Create well-designed programs, and identify and improve poorly-designed ones Build a professional-level understanding of polymorphism and its use in Java interfaces and class hierarchies Apply classic design patterns to Java programming problems while respecting the modern features of the Java language Take advantage of classes from the Java library to facilitate the implementation of design patterns in your programs

2018-12-09

Learn Keras for Deep Neural Networks

Learn, understand, and implement deep neural networks in a math- and programming-friendly approach using Keras and Python. The book focuses on an end-to-end approach to developing supervised learning algorithms in regression and classification with practical business-centric use-cases implemented in Keras. The overall book comprises three sections with two chapters in each section. The first section prepares you with all the necessary basics to get started in deep learning. Chapter 1 introduces you to the world of deep learning and its difference from machine learning, the choices of frameworks for deep learning, and the Keras ecosystem. You will cover a real-life business problem that can be solved by supervised learning algorithms with deep neural networks. You’ll tackle one use case for regression and another for classification leveraging popular Kaggle datasets. Later, you will see an interesting and challenging part of deep learning: hyperparameter tuning; helping you further improve your models when building robust deep learning applications. Finally, you’ll further hone your skills in deep learning and cover areas of active development and research in deep learning. At the end of Learn Keras for Deep Neural Networks, you will have a thorough understanding of deep learning principles and have practical hands-on experience in developing enterprise-grade deep learning solutions in Keras. What You’ll Learn Master fast-paced practical deep learning concepts with math- and programming-friendly abstractions. Design, develop, train, validate, and deploy deep neural networks using the Keras framework Use best practices for debugging and validating deep learning models Deploy and integrate deep learning as a service into a larger software service or product Extend deep learning principles into other popular frameworks

2018-12-08

Practical Computer Vision Applications Using Deep Learning with CNNs

Deploy deep learning applications into production across multiple platforms. You will work on computer vision applications that use the convolutional neural network (CNN) deep learning model and Python. This book starts by explaining the traditional machine-learning pipeline, where you will analyze an image dataset. Along the way you will cover artificial neural networks (ANNs), building one from scratch in Python, before optimizing it using genetic algorithms. For automating the process, the book highlights the limitations of traditional hand-crafted features for computer vision and why the CNN deep-learning model is the state-of-art solution. CNNs are discussed from scratch to demonstrate how they are different and more efficient than the fully connected ANN (FCNN). You will implement a CNN in Python to give you a full understanding of the model. After consolidating the basics, you will use TensorFlow to build a practical image-recognition model that you will deploy to a web server using Flask, making it accessible over the Internet. Using Kivy and NumPy, you will create cross-platform data science applications with low overheads. This book will help you apply deep learning and computer vision concepts from scratch, step-by-step from conception to production. What You Will Learn Understand how ANNs and CNNs work Create computer vision applications and CNNs from scratch using Python Follow a deep learning project from conception to production using TensorFlow Use NumPy with Kivy to build cross-platform data science applications

2018-12-08

Introduction to Python Programming

Introduction to Python Programming is written for students who are beginners in the field of computer programming. This book presents an intuitive approach to the concepts of Python Programming for students. This book differs from traditional texts not only in its philosophy but also in its overall focus, level of activities, development of topics, and attention to programming details. The contents of the book are chosen with utmost care after analyzing the syllabus for Python course prescribed by various top universities in USA, Europe, and Asia. Since the prerequisite know-how varies significantly from student to student, the book’s overall overture addresses the challenges of teaching and learning of students which is fine-tuned by the authors’ experience with large sections of students. This book uses natural language expressions instead of the traditional shortened words of the programming world. This book has been written with the goal to provide students with a textbook that can be easily understood and to make a connection between what students are learning and how they may apply that knowledge. Features of this book This book does not assume any previous programming experience, although of course, any exposure to other programming languages is useful This book introduces all of the key concepts of Python programming language with helpful illustrations Programming examples are presented in a clear and consistent manner Each line of code is numbered and explained in detail Use of f-strings throughout the book Hundreds of real-world examples are included and they come from fields such as entertainment, sports, music and environmental studies Students can periodically check their progress with in-chapter quizzes that appear in all chapters

2018-12-06

Data Wrangling with JavaScript

With a growing ecosystem of tools and libraries available, and the flexibility to run on many platforms (web, desktop and mobile), JavaScript is a terrific all-round environment for all data wrangling needs! Data Wrangling with JavaScript teaches readers core data munging techniques in JavaScript, along with many libraries and tools that will make their data tasks even easier. Table of Contents Chapter 1 Getting Started: Establishing Your Data Pipeline Chapter 2 Getting Started With Node.Js Chapter 3 Acquisition, Storage, And Retrieval Chapter 4 Working With Unusual Data Chapter 5 Exploratory Coding Chapter 6 Clean And Prepare Chapter 7 Dealing With Huge Data Files Chapter 8 Working With A Mountain Of Data Chapter 9 Practical Data Analysis Chapter 10 Browser-Based Visualization Chapter 11 Server-Side Visualization Chapter 12 Live Data Chapter 13 Advanced Visualization With D3 Chapter 14 Getting To Production Appendix A JavaScript cheat sheet Appendix B Data-Forge cheat sheet Appendix C Getting started with Vagrant

2018-12-03

Learn R for Applied Statistics

Gain the R programming language fundamentals for doing the applied statistics useful for data exploration and analysis in data science and data mining. This book covers topics ranging from R syntax basics, descriptive statistics, and data visualizations to inferential statistics and regressions. After learning R’s syntax, you will work through data visualizations such as histograms and boxplot charting, descriptive statistics, and inferential statistics such as t-test, chi-square test, ANOVA, non-parametric test, and linear regressions. Learn R for Applied Statistics is a timely skills-migration book that equips you with the R programming fundamentals and introduces you to applied statistics for data explorations. What You Will Learn Discover R, statistics, data science, data mining, and big data Master the fundamentals of R programming, including variables and arithmetic, vectors, lists, data frames, conditional statements, loops, and functions Work with descriptive statistics Create data visualizations, including bar charts, line charts, scatter plots, boxplots, histograms, and scatterplots Use inferential statistics including t-tests, chi-square tests, ANOVA, non-parametric tests, linear regressions, and multiple linear regressions

2018-12-02

Reactive Streams in Java: Concurrency with RxJava, Reactor, and Akka Streams

Get an easy introduction to reactive streams in Java to handle concurrency, data streams, and the propagation of change in today's applications. This compact book includes in-depth introductions to RxJava, Akka Streams, and Reactor, and integrates the latest related features from Java 9 and 11, as well as reactive streams programming with the Android SDK. Reactive Streams in Java explains how to manage the exchange of stream data across an asynchronous boundary―passing elements on to another thread or thread-pool―while ensuring that the receiving side is not forced to buffer arbitrary amounts of data which can reduce application efficiency. After reading and using this book, you'll be proficient in programming reactive streams for Java in order to optimize application performance, and improve memory management and data exchanges. What You Will Learn Discover reactive streams and how to use them Work with the latest features in Java 9 and Java 11 Apply reactive streams using RxJava Program using Akka Streams Carry out reactive streams programming in Android Who This Book Is For Experienced Java programmers. Table of Contents Chapter 1: Introduction to Reactive Streams Chapter 2: Existing Models of Concurrency in Java Chapter 3: Common Concepts Chapter 4: RxJava Chapter 5: Reactor Chapter 6: Akka Streams Chapter 7: Android and RxJava Chapter 8: Spring Boot and Reactor Chapter 9: Akka HTTP and Akka Streams Chapter 10: Conclusions Appendix A: Java 10 and 11

2018-11-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除