DEV
自己动手设计数据库 豆瓣
Database design for mere mortals: a hands-on guide to relational database design
作者: 【美】Michael J. Hernandez(迈克尔•J•埃尔南德斯) 译者: 盛杨燕 电子工业出版社 2015 - 9
《自己动手设计数据库》主要讲述数据库的设计,讨论了如何建立表结构、确定主键、设置字段说明、建立表关系、确立业务规则、建立视图和各层次的数据完整性,以及如何避免不好的设计等问题。《自己动手设计数据库》提供的是数据库设计的一种概念性思路,因此与市面上众多的同类书籍相比,《自己动手设计数据库》有两个比较鲜明的特点。第一,作者采用简单易懂的语言,尽量清晰、全面地描述关系数据库设计的整个过程,没有过多专业的术语和复杂的数据库设计方法学,因此《自己动手设计数据库》既适合专业人士参考之用,也适合给初学者、数据库设计爱好者充当从入门到进阶的重要读物。第二,作者高度重视数据库的逻辑设计,严格区分逻辑设计和实现阶段,以确保高效、成功地设计良好的数据库。
《自己动手设计数据库》适合数据库初学者、有经验的数据库开发人员,以及所有对数据库设计感兴趣的读者阅读参考。
2016年6月7日 想读
DEV
巨龙时代 豆瓣
Day of the Dragon
6.7 (6 个评分) 作者: 理查德·A.纳克 译者: 赵永健 / 余美 文汇出版社 2007 - 5
在遥远的过去,笼罩在薄雾之中的艾泽拉斯世界里充满了各种神奇的生灵。神秘的精灵和强悍的矮人与人类部落和睦相处,彼此相安无事。可是,在“燃烧军团”的恶魔大军出现之后,世界的宁静随即被永远打破。如今,各个王国之间战火不断,兽人、巨龙、地精和巨魔都争抢着要统治整个世界。一个绝世阴谋将会决定整个魔兽世界的命运。
一场可怕的剧变令艾泽拉斯最高级别的法师们决定派遣特立独行的罗宁法师前往兽人统治下的卡兹莫丹。罗宁随后发现了一个惊世大阴谋,如此险恶的阴谋他是闻所未闻。为了让艾泽拉斯世界能重见曙光,他只好与这个世界可怕的古老生灵结成联盟。
2016年6月11日 想读
DEV
PostgreSQL 9 Administration Cookbook (第2版)中文版 豆瓣
作者: 【美】Simon Riggs (西蒙.里格斯) / 【美】Gianni Ciolli(贾尼.乔里) 译者: 黄坚 / 谭峰 电子工业出版社 2016 - 6
《PostgreSQL 9 Administration Cookbook (第2版)中文版》提供了在线生产环境的PostgreSQL数据库的常见问题和故障快速解答,这些都基于作者作为PostgreSQL数据库培训师、用户和核心开发人员时的经验积累。每个技术都被拆分为小的方法或建议,先给出包含可工作代码的演示解决方案,然后解释这样做的原因及工作原理。《PostgreSQL 9 Administration Cookbook (第2版)中文版》意在成为新用户和技术专家的桌面参考手册。
《PostgreSQL 9 Administration Cookbook (第2版)中文版》涵盖了PostgreSQL 9 所有的新功能。
2016年6月12日 想读
DEV
自己动手写Java虚拟机 豆瓣
作者: 张秀宏 2016 - 6
Java虚拟机非常复杂,要想真正理解它的工作原理,最好的方式就是自己动手编写一个!
本书是继《深入理解Java虚拟机》之后的又一经典著作,它一方面遵循《Java虚拟机规范》,一方面又独辟蹊径,不仅能让Java虚拟机的学习变得更加简单和有趣,而且能让你对Java虚拟机的原理认识更深入和更深刻!
本书摒弃了传统的以解读枯燥的Java虚拟机规范文档和分析繁琐的Java虚拟机源代码的方式来讲解Java虚拟机,取而代之的是,以实践的方式,引导读者如何从零开始构建和实现一个Java虚拟机,整个过程不仅能让读者做到对Java虚拟机知其然而且知其所以然,还能屏蔽大量不必要的繁琐细节,体会到实现过程中的成就感,让学习过程更加轻松、愉悦和高效。更重要的是,这种方式能引导读者更深入地认识和掌握Java虚拟机的工作原理。
2016年7月3日 想读 怎么什么都是 "自己动手"...
DEV
万物解释者 Goodreads 豆瓣
THING EXPLAINER
5.8 (11 个评分) 作者: [美国] 兰道尔·门罗 译者: 孙璐 未读·北京联合出版公司 2016 - 7
入选比尔·盖茨2015年度推荐图书!
用小学生都能看懂的文字+大幅蓝图 解释多学科事物
你有没有想要进一步了解复杂的事物,却被那些烦人的专业名词搞得一头雾水?这本书会帮上大忙!作者用大幅蓝图和小学生都能看懂的文字,以严谨的科学家态度,解释了世界上有趣又难懂的45种事物:围着太阳转的其它世界(太阳系),构成世间万物的各种玩意(元素周期表),在你体内装着很多水的小袋子(细胞)……
这些东西从哪儿来?它们各部位的用途和运作原理是什么?不需要知道那些高冷的专业词汇,就能秒懂世间万物的运作方式。
【编辑推荐】
★被奉为美国“国宝”的趣味科普作家、2015畅销科普书《WHAT IF那些古怪又让人忧心的问题》作者新书:再次荣登美国亚马逊NO.1,作者出版的三部作品均被比尔·盖茨推荐。
★用小学生都能看懂的文字解释万事万物,满足5~105岁人类的好奇心:没有难懂的专业词汇,全部汉字选自人教版小学生低年级生字表,用大幅信息图重新解读生活中常被提及的有趣事物,涵盖天文、物理、生物、化学、机械等多个学科。
★八开精装超大开本,专色印刷,45张大幅蓝图+多幅大拉页+四开大海报。
2016年7月14日 想读
DEV
Thing Explainer 豆瓣
作者: Randall Munroe Houghton Mifflin Harcourt 2015 - 11
Have you ever tried to read up on some incredible part of the world, only to find yourself faced with incomprehensible terminology and jargon? It’s nice to know what the parts of a thing are called, but it’s even more interesting to know what they do. What if you had something that could clearly explain it all using simple words?
Thing Explainer, by Randall Munroe, does just that. Using line drawings and only the thousand (or, rather, “ten hundred”) most common words, he provides simple explanations for some of the world’s most interesting things: our food-heating radio boxes (microwaves), our very tall roads (bridges), and our computer buildings (datacenters). He also explains the other worlds around our sun (the solar system), the big flat rocks we live on (tectonic plates), and even the stuff inside us (cells).
Where do these things come from? How do they work? What do they look like if you open them up? What would life be like without them? And what would happen if we heated them up, cooled them down, pointed them in a different direction, or pressed this button? In Thing Explainer, Munroe gives us the answers to these questions and so many more. Funny, interesting, and always understandable, this book is for anyone—age 5 to 105—who has ever wondered how things work, and why.
2016年7月14日 想读
DEV
修改代码的艺术 豆瓣
Working Effectively with Legacy Code
作者: (美)Michael C. Feathers 译者: 侯伯薇 机械工业出版社 2014 - 6
世界级计算机专家Michael C. Feathers的经典之作,软件开发大师Robert C. Martin作序倾情推荐,修改遗留代码的权威指南。深入剖析修改遗留代码的各种方法和策略,从理解遗留代码、为其编码测试、重构及增加特性等方面给出大量实用建议,是所有程序开发人员必读之作。
修改代码时,你觉得容易吗?当你修改代码时,能否几乎即时地获得反馈?你理解那些代码吗?如果对于这些问题的答案是否定的,那么你面对的就是遗留代码,它们正在浪费你开发工作的时间和金钱。
在本书中,作者为更有效地处理大规模、缺少测试的遗留代码提供了自始至终的策略。本书内容来自Michael创建的非常知名的Object Mentor公司的研习会,Michael使用那些技术来指导并帮助了成千上万位开发者、技术经理和测试人员,让他们的遗留系统处于可控状态。
本书主要内容:
理解修改软件的机制:添加特性、修正缺陷、改进设计、优化性能
把遗留代码放到测试用具之中
编写测试,防止引入新的问题
包含Java、C++、C和C#的示例,其中介绍的大多数技术适用于其他任何语言或平台
精确地确定要在哪些地方修改代码
处理非面向对象的遗留代码
处理看起来没有任何结构的应用程序
2016年7月18日 想读
DEV
算法笔记 豆瓣
作者: 刁瑞 / 谢妍 电子工业出版社 2016 - 7
《算法笔记》介绍了若干常见算法,既包括排序、哈希等基础算法,也包括无约束优化、插值与拟合等数值计算方法。《算法笔记》在介绍算法的同时,结合了作者自己对数学背景、应用场景的理解,便于读者把握算法的核心思想。《算法笔记》尽可能地避开了以应试为导向的灌输式讲解,力求引起读者的兴趣并扩大其视野,例如在介绍哈希时,讲解了如何将哈希的算法思想运用于相似性搜索、负载均衡等多个实际问题中;又如在介绍高斯消去法时,讲解了相关的数学理论及编程实现上的具体技巧,并将其运用于对大规模稀疏线性方程组的求解,等等。
《算法笔记》面向有一定高等数学、编程语言基础及对算法有初步了解的读者,包括高等院校的学生、程序员、算法分析人员及设计人员等,旨在帮助读者进一步学习算法,理解与算法相关的理论基础和应用实例。
2016年7月23日 想读
DEV
The Effective Engineer 豆瓣 Goodreads
9.4 (7 个评分) 作者: Edmond Lau The Effective Bookshelf, Palo Alto, CA. 2015 - 3
The most effective engineers — the ones who have risen to become distinguished engineers and leaders at their companies — can produce 10 times the impact of other engineers, but they're not working 10 times the hours.
They've internalized a mindset that took me years of trial and error to figure out. I'm going to share that mindset with you — along with hundreds of actionable techniques and proven habits — so you can shortcut those years.
Introducing The Effective Engineer — the only book designed specifically for today's software engineers, based on extensive interviews with engineering leaders at top tech companies, and packed with hundreds of techniques to accelerate your career.
For two years, I embarked on a quest seeking an answer to one question:
How do the most effective engineers make their efforts, their teams, and their careers more successful?
I interviewed and collected stories from engineering VPs, directors, managers, and other leaders at today's top software companies: established, household names like Google, Facebook, Twitter, and LinkedIn; rapidly growing mid-sized companies like Dropbox, Square, Box, Airbnb, and Etsy; and startups like Reddit, Stripe, Instagram, and Lyft.
These leaders shared stories about the most valuable insights they've learned and the most common and costly mistakes that they've seen engineers — sometimes themselves — make.
This is just a small sampling of the hard questions I posed to them:
What engineering qualities correlate with future success?
What have you done that has paid off the highest returns?
What separates the most effective engineers you've worked with from everyone else?
What's the most valuable lesson your team has learned in the past year?
What advice do you give to new engineers on your team?
Everyone's story is different, but many of the lessons share common themes.
You'll get to hear stories like:
How did Instagram's team of 5 engineers build and support a service that grew to over 40 million users by the time the company was acquired?
How and why did Quora deploy code to production 40 to 50 times per day?
How did the team behind Google Docs become the fastest acquisition to rewrite its software to run on Google's infrastructure?
How does Etsy use continuous experimentation to design features that are guaranteed to increase revenue at launch?
How did Facebook's small infrastructure team effectively operate thousands of database servers?
How did Dropbox go from barely hiring any new engineers to nearly tripling its team size year-over-year?
What's more, I've distilled their stories into actionable habits and lessons that you can follow step-by-step to make your career and your team more successful.
The skills used by effective engineers are all learnable.
And I'll teach them to you. With The Effective Engineer, I'll teach you a unifying framework called leverage — the value produced per unit of time invested — that you can use to identify the activities that produce disproportionate results.
Here's a sneak peek at some of the lessons you'll learn. You'll learn how to:
Prioritize the right projects and tasks to increase your impact.
Earn more leeway from your peers and managers on your projects.
Spend less time maintaining and fixing software and more time building and shipping new features.
Produce more accurate software estimates.
Validate your ideas cheaply to reduce wasted work.
Navigate organizational and people-related bottlenecks.
Find the appropriate level of code reviews, testing, abstraction, and technical debt to balance speed and quality.
Shorten your debugging workflow to increase your iteration speed.
Use metrics to quantify your impact and consistently make progress.
2016年7月29日 想读
DEV
数学女孩 豆瓣
作者: 结城浩 译者: 朱一飞 安徽教育出版社 2009 - 10
《数学女孩》:美露嘉,男主人公的同班同学,非常聪明的一个女孩子,数学很好,且能够运用非常简捷的解题方法,但是很泼辣;铁户罗,读高一,男主公的学妹,数学一直不好,弄不明白那些数学公式是怎么回事,只好找学长即本书男主人公补习数学,她是一个很单纯且可爱的女孩子。可这个热爱独自探究的男孩,却介于这两个女孩之间。
在图书馆、在阶梯教室,经常三个人会碰到一起。开始美露嘉对铁户罗存在误解,后来通过接触,三个人却成了好朋友。奋发向上的他们演绎了怎样一个扣人心弦的校园故事?
既可以说这是一本小说书,也可以说他是一本数学题解书,不妨看看书中的数学题你是否都会解,也感受一下男女主人翁的那种感情你是否经历。
2016年8月2日 想读
DEV
漏洞战争 豆瓣
作者: 林桠泉 电子工业出版社 2016 - 7
《漏洞战争:软件漏洞分析精要》系统地讲解软件漏洞分析与利用所需的各类工具、理论技术和实战方法,主要涉及Windows 和Android 系统平台。《漏洞战争:软件漏洞分析精要》根据不同的软件漏洞类型划分,比如堆栈溢出、沙盒逃逸、类型混淆、UAF、内核漏洞等,同时又针对当前流行的移动安全,加入Android 平台上的漏洞分析与利用。以精心挑选的经典漏洞为例,以分享漏洞的分析技巧和工具为主,对这些漏洞的成因、利用及修复方法进行详细讲解,旨在"授之以渔"。《漏洞战争:软件漏洞分析精要》最大的特点是以各种类型的经典漏洞作为实战讲解,摒弃空头理论,几乎是"一本用调试器写出来的书"。
《漏洞战争:软件漏洞分析精要》适合计算机相关专业的本科及研究生,信息安全爱好者,软件安全及移动安全相关的安全从业人员,软件开发与测试人员、黑客等阅读。
2016年8月3日 想读
DEV
豆瓣
7.4 (13 个评分) 作者: 张悦然 人民文学出版社 2016 - 7
《茧》是一部以80后一代人的视角直面祖辈、父辈恩怨纠葛的转折之作,通过一桩骇人罪案层层抽丝剥茧的漫长过程,将几代中国人的现实际遇与心灵困境展开在读者面前。某种意义上,《茧》提供的是一部关于创伤记忆‘代际传递’的小说。主人公李佳栖与程恭,一位是负罪者,一位是复仇者,因袭着巨大的创痛,既徘徊在历史边缘,又主动与周围世界疏离……与张悦然此前的作品相比,《茧》的结尾更多显露出作者的善意,这部小说如同病历档案,同时也提供了一份康复记录。
2016年8月8日 想读
DEV
猫语大辞典 豆瓣
Cat Dictionary
8.0 (7 个评分) 作者: [日]今泉忠明 译者: 小岩井 北京联合出版公司·后浪出版公司 2016 - 8
猫奴幸福生活完全指南
日本猫博物馆馆长独家解密“喵语”
特别收录猫咪海量萌照及猫狗彻底比较!
那些猫咪百科没告诉你的事,听猫咪亲口对你说吧!
...................
※编辑推荐※
每只猫都有自己独特的个性和表达习惯,我们和猫咪属于两个不同的世界,即使再爱它们,语言上的障碍也总让人困惑受挫。为什么它喜欢趴在我的电脑上?为什么它开心烦恼时都会摇尾巴?为 什么冷不丁就翻脸挠人?虽然爱猫之人众多,但恐怕很多人都不知道喵星人的真正所想,不知道知道它们“喵叫”背后的真正含义。所以,继《猫咪学问大》之后,这本《猫语大辞典》以同样专业、友善的建议,帮助你用猫的眼睛看世界!
本书由日本猫博物馆馆长今泉忠明编写,以猫的“喵叫”为中心,辅以猫的姿态,动作,行为,解读种种现象后隐藏的真正含义,让你以猫的思考方式了解喵星人的世界,成为它真正的伙伴。爱它,就该弄懂它,告别低三下四的费劲取悦吧,用对的方式爱猫,它会心甘情愿伴你一生。
...................
※内容简介※
这是日本著名猫博物馆馆长今泉忠明送给全世界新手猫奴、资深猫奴的福音书。
为了帮新手猫奴从一开始就了解爱猫,也为资深猫奴不再费力不讨好,作为权威猫咪专家的今泉忠明特意编著了这本《猫语大辞典》,为所有猫奴详细解说“猫语”速成法则,让你从头到尾彻底了解爱猫!
还会告诉你各种神秘、难解的猫咪大小事背后的真相。为什么它们独来独往不爱交际?排泄物会及时掩埋却不喜欢洗澡?有时爱答不理,有时连上厕所都要跟着!
爱它,就该弄懂它。有了本书指引,相信你能深入了解猫咪内心,明白它的真实需求,永远与爱猫心灵相通!
2016年8月11日 想读
DEV
高性能Docker 豆瓣
作者: 【美】艾伦•埃斯皮诺萨(Allan Espinosa) 译者: 陈杰 杨峰 夏彬 电子工业出版社 2016 - 9
《高性能Docker》共分8 章,旨在帮助读者改善其Docker 工作流,并保证应用在生产环境中顺利进行。
《高性能Docker》中简单回顾了Docker 是如何工作的。除了Docker 的基础知识外,读者还会学到如何优化Docker基础架构和大规模应用。《高性能Docker》最后讲解的如何在基础架构中部署监控和故障排除系统,更是可以让读者更好地将学到的Docker 的特性、概念等运用到实践中。
如果你对于管理Docker 服务和Linux 文件系统有充分的理解,并希望优化你的Docker 容器,那《高性能Docker》将非常适合你。
2016年8月25日 想读
DEV
Cloud Architecture Patterns 豆瓣
作者: Bill Wilder O'Reilly Media 2012 - 10
If your team is investigating ways to design applications for the cloud, this concise book introduces 11 architecture patterns that can help you take advantage of several cloud-platform services. You’ll learn how each of these platform-agnostic patterns work, when they might be useful in the cloud, and what impact they’ll have on your application architecture. You’ll also see an example of each pattern applied to an application built with Windows Azure.
The patterns are organized into four major topics, such as scalability and eventual consistency, and primer chapters provide background on each topic. With the information in this book, you’ll be able to make informed decisions for designing effective cloud-native applications, where cloud-native applications maximize the value of cloud services while also paying attention to user experience and operational efficiency.
Learn about architectural patterns for:
* Scalability. Discover the advantages of horizontal scaling. Patterns covered include Horizontally Scaling Compute, Queue-Centric Workflow, and Auto-Scaling.
Big data. Learn how to handle large amounts of data across a distributed system. Eventual consistency is explained, along with the MapReduce and Database Sharding patterns.
* Multitenancy and commodity hardware. Understand how they influence your applications. Patterns covered include Busy Signal and Node Failure.
* Network latency. Learn how to overcome delays due to network latency when building applications for a geographically distributed user base. Patterns covered include Colocation, Valet Key, CDN, and Multi-Site Deployment.
2016年8月29日 想读
DEV
软技能 豆瓣
Soft Skills: The software developer's life manual
8.6 (40 个评分) 作者: [美] John Z. Sonmez 译者: 王小刚 人民邮电出版社 2016 - 7
这是一本真正从“人”(而非技术也非管理)的角度关注软件开发人员自身发展的书。书中论述的内容既涉及生活习惯,又包括思维方式,凸显技术中“人”的因素,全面讲解软件行业从业人员所需知道的所有“软技能”。本书聚焦于软件开发人员生活的方方面面,从揭秘面试的流程到精耕细作出一份杀手级简历,从创建大受欢迎的博客到打造你,从提高自己工作效率到与如何与“拖延症”做斗争,甚至包括如何投资不动产,如何关注自己的健康。本书共分为职业篇、自我营销篇、学习篇、生产力篇、理财篇、健身篇、精神篇等七篇,概括了软件行业从业人员所需的“软技能”。通过阅读本书,软件工程人员、编程人员和其他技术人员能够积极思考自己的职业生涯,丰富自己的生活,让自己更接近成功。
程序员的呐喊 豆瓣 Goodreads
A Programmer's Rantings
7.7 (12 个评分) 作者: [美]Steve Yegge 译者: 徐旭铭 人民邮电出版社 2014 - 5
《程序员的呐喊》的作者是业界知名的程序员—来自google的steve yegge,他写过很多颇富争议的文章,其中有不少就收录在这本书中。本书是他的精彩文章的合集。
《程序员的呐喊》涉及编程语言文化、代码方法学、google公司文化等热点话题。
对工厂业界的各种现象、技术、趋势等,作者都在本书中表达了自己独特犀利的观点。比如java真的是一门优秀的面向对象语言吗?重构真的那么美好吗?强弱类型语言到底哪个更好?敏捷真的靠谱吗?程序员要不要懂数学等。另外,他还谈到了很多大公司的理念,比如亚马逊做平台为什么那么成功等。最后,本书还收录了他写的google面试攻略,这篇文章可以说为无数应试者点亮了明灯。
《程序员的呐喊》讨论的都是程序员非常关注的热点话题,内容广泛,观点独到,非常适合广大程序员阅读参考。
2016年9月9日 想读
DEV
PostgreSQL查询引擎源码技术探析 豆瓣
作者: 李浩 电子工业出版社 2016 - 8
PostgreSQL作为当今最先进的开源关系型数据库,《PostgreSQL查询引擎源码技术探析》揭示PostgreSQL查询引擎的运行原理和实现技术细节,其中包括:基础数据结构;SQL词法语法分析及查询语法树;查询分析及查询重写;子链接及子查询处理;查询访问路径创建;查询计划生成,等等。以深入浅出的方式讨论每个主题并结合基础数据结构、图表、源码等对所讨论的主题进行详细分析,以使读者对PostgreSQL查询引擎的运行机制及实现细节能有全面且深入的认识。
《PostgreSQL查询引擎源码技术探析》适合从事数据库领域相关研究人员、高等院校相关专业高年级本科生或研究生阅读,也可作为高等院校的数据库原理课程的有益补充,还可作为业界数据库相关人员的案头图书。《PostgreSQL查询引擎源码技术探析》有助于读者理解数据查询引擎内核的技术内幕。
2016年9月12日 想读
DEV
算法技术手册 豆瓣
Algorithms in a Nutshell
作者: George T. Heineman / Gary Pollice 译者: 杨晨 / 李明 机械工业出版社 2010 - 3
《算法技术手册》内容简介:开发健壮的软件需要高效的算法,然后程序员们往往直至问题发生之时,才会去求助于算法。《算法技术手册》讲解了许多现有的算法,可用于解决各种问题。通过阅读它,可以使您学会如何选择和实现正确的算法,来达成自己的目标。另外,书中的数学深浅适中,足够使您可以了解并分析算法的性能。
较之理论而言,《算法技术手册》更专注于应用。《算法技术手册》提供了高效的代码解决方案,使用多种语言进行编写,让您可以轻松地将其应用于特定的工程当中。通过《算法技术手册》,您可以:
· 解决特定代码的问题,或者提升既有解决方案的性能
· 快速找到与您所解决的问题相关的算法,并决定哪个算法才是最适合的那一个
· 探索使用C、C++、Java以及Ruby实现的算法解决方案以及开发小贴士
· 了解算法预期的性能,以及它达到最高性能时所需要的条件
· 发现不同算法之间相似的设计哲学
· 学习高级数据结构,来提升算法的性能
通过《算法技术手册》,您能学到如何提升算法的性能,这将是您的软件应用程序走向成功的关键。
2016年9月17日 想读
DEV