Fork me on GitHub

Visual Studio Guide

New feature supported by VS2013

To improve the efficiency of the team.

  • Peek Definition(select the key you want to peek, and click Alt+F12 )

  • Peek help in MSDN (select the key you want to peek, and click Alt +F1)

  • Navigate To(Ctrl +,)

  • CodeLens (Tool->Option->Text Editor->All Languages->CodeLens)

  • Quick Launch (Ctrl+Q)

  • Debug->Performance and Diagnostics

  • Edit and Continue supported for 64bit

New feature supported by VS2017

Breakpoint Labels

Within Visual Studio, once you’ve created a breakpoint, you can add one or more labels to it by simply right-clicking and choosing Edit Labels:

edit breakpoint label

edit-breakpoint-label

After adding labels to breakpoints, you can view them in the Breakpoints window:

breakpoints window

breakpoint window

If you present code at conferences, user groups, etc., you may find labeled breakpoints useful during demos. You can add a label like “Demo 1” to some breakpoints, and “Demo 2” to others. Toggle which breakpoints are enabled when you run your application in order to demonstrate different topics.

Parallel Builds

https://www.codeproject.com/tips/1042975/tips-to-improve-visual-studio-build-performance

Shortcut Keys in VS2017

  • Incremental Search Ctrl + I

  • Find All Reference Shift + F12

  • Full Screen Shift+Alt+Enter

  • Go To Implementation Ctrl + F12

Visual Studio 2017 Extensions

Python Development with Visual Studio 2017

Visual Studio 2019

Visual Studio 2019 Extensions

  • Whack Whack Terminal

Terminal emulator for Visual Studio. Allows you to run command prompt, powershell, WSL bash. All including interactive mode.

Continue reading →

高级动物

动画电影里,一只狡猾的狐狸,头戴耳机,手扶平衡车,臂膀上套着手机,哼着小曲,漫步在城市街道上。观众嘴角流露着笑容,心里赞叹着:萌萌哒。

现实世界里,看到一位骨瘦如柴的六旬老人,戴着流氓式的墨镜,蹲坐在电瓶车上面,车篮里面老人机播放着响彻巷尾的网络歌曲。

如果这个画面没能引起我们的注意,难道就因为我们是高级动物? 我想了下,可能不是,高级动物毕竟还是动物,只是我们早已习惯于进化成神的奔赴。 仔细想想,现在的人,这种高级动物,借助工具和科技,有点半仙,半机器人的感觉。以后还不知道能不能称之为人?

Continue reading →

大脑-内存-硬盘

4岁的小孩子,每天读10分钟的三字经,一两个月下来,一本三字经居然从头背到尾了。让我这个成人不免惭愧。

然而真的是像科学家说的成人记忆力衰退了? 还是我们与小孩的记忆模式不同?

我胡诌了下面的说法:

小孩子的大脑,是像余量充足的硬盘,每天少量接受的一些信息,他能挑选性的存到这个硬盘里; 成人的大脑,像是繁忙的内存,每天处理着大量信息,然而多数是稍纵即逝,关机就消失,很少有最终能存到硬盘的。慢慢的也习惯了这种暂存内存,忙忙碌碌的模式。

Continue reading →

software integration design thinking 软件集成设计随想

Service agent (SA) 这个项目与service manager (SM) 集成经历过两种方案,一种是直接与SM的数据库进行集成交互;另外一种就是面向服务的集成,通过SM提供的SMRWS API服务进行交互集成。我概括地称之为直接面向基准数据源的集成设计(SA->SMDB) 和面向服务的集成设计(SA->SMRWS->SMDB)。

问题

今天遇到一个面向服务的集成设计的问题,SMRWS的主从web servers的cache数据出现同步了问题,导致SA连接SMRWS获取的信息不准确,有一个场景就是我们通过SMRWS来验证用户权限,因为获取的信息不准确导致我们误判用户不再存在于SM源系统,进而删除了用户在SA系统的权限。

结果

作为下游系统的SA这种情况下显得格外尴尬,用户抱怨SA系统的可用性和稳定性。

反思

作为面向服务的下游系统,必须考虑外接服务的不稳定性,提前做好准备,进行一些异常应对, 比如当对方服务无法连接,要让本系统通过本地缓存保持”off-line” 继续工作。 当然对于上述的那个因上游系统的问题,导致本系统逻辑上的误判 (到底是用户真的不存在于上游系统背后的数据库了,还是因为上游系统出现了同步问题,这个需要和上游系统就关键逻辑场景进行标志,比如当上游系统的cache出现同步问题时候,需要在API返回结果里进行标识)。

Continue reading →

learn the up to date knowledge

随时过期的技术文章

在网络上搜索最流行的三大web服务器的对比,看到一些2014年的博客(比如http://yanguz123.iteye.com/blog/2055589),言之凿凿地做了一些表格化的对比整理。其中就有一项说nginx 不支持 sticky session. 还算比较有怀疑精神的我,当即表示怀疑最新的版本里nginx 是不是像这篇文章里所述仍然不支持sticky session.

于是去google搜到一些nginx官网的文章链接1 and 链接2 证实nginx 已然支持 sticky session.

My Point

写这篇的目的不是为了责难一些过往的博客,毕竟人家把自己当年学习的经验进行了总结和分享,特别值得肯定。 我想说的是技术本身一直在发展,一些技术文章和知识会过期。当你第一次学习某个主题的技术时,除了要了解他的历史,更重要的是知道他最新的样子。

My Suggestion

当你学习某个主题时( 比如nginx):

  1. 经常光顾官网的document, wiki
  2. 买最新的出版的这个主题的书籍
  3. 网络blog里的过往的文章当成历史去读,一定要自己加以验证。
  4. 不要转载别人的文章的内容,建议只引用原始文章标题和链接。(理由: a. 转载后的拷贝版本是死的,不能获取到原作者对老文章进行的最新的修订。b.减少网络资源重复,创造绿色环保的网络)
Continue reading →

All Tags

mindset

devops

book

ci

communication

jenkins

自媒体

hometown

geek life

cloud

ai