Vehicle Destination Charges - New Car Business Destination Fees - Kelley Blue Book



Vehicle Destination Charges - New Car Business Destination Fees - Kelley Blue Book

Have you ever wondered what you're paying for when you buy a new car and the paperwork lists tax, license and destination charge? What is the destination charge all about? Well, if you've seen the trucks carrying cars on the highways or freight trains stacked with new vehicles, you are basically witnessing the service your destination fees pay. The fee is usually in the neighborhood of $400 — $800 per vehicle and no amount of negotiating will make it go away.

Logic would tell you that if you lived near a port or a particular automotive assembly plant, you could potentially pay less for the destination fees — not so. The destination charge is calculated by each manufacturer based on something called an "equalized delivery." In other words, they factor the cost of shipping all vehicles in the line and "equalize" the cost so the fee is "equal" for all car-buyers.


Read full article from Vehicle Destination Charges - New Car Business Destination Fees - Kelley Blue Book


How to Get the Best Car Loan | New Car Buying - Consumer Reports



How to Get the Best Car Loan | New Car Buying - Consumer Reports

Some consumers will spend days making sure they get the lowest price on a vehicle, yet they won't bother to shop for the best auto loan. If you don't have financing in place when you visit the dealership to buy, you're leaving yourself vulnerable to whatever terms the dealer offers, which may have a much higher interest rate than you could get elsewhere. And dealers often mark up the interest rate of a loan over what you actually qualify for, which can cost you hundreds of dollars extra.


Read full article from How to Get the Best Car Loan | New Car Buying - Consumer Reports


5 Car Loan Mistakes That Cost You Money | Bankrate.com



5 Car Loan Mistakes That Cost You Money | Bankrate.com

4. Rolling negative equity forward. "Upside down" is the term used to describe owing more on your car than it is worth. The difference is "negative equity." When a dealer tells an upside-down consumer that he can fold that negative equity into the car financing of the next deal, he means that he will add it to the purchase price of the new car.


Read full article from 5 Car Loan Mistakes That Cost You Money | Bankrate.com


How many passengers can the 2018 Honda CR-V seat?



How many passengers can the 2018 Honda CR-V seat?

The 2018 CR-V can seat up to five people — and with a generous passenger volume of 105.9 cu-ft, you and you passengers have a great deal of space to relax and enjoy the ride. The 2018 CR-V also offers plenty of cargo space, with a cargo volume of 39.2 cu-ft with the rear seats in their upright position, and 75.8 cu-ft with the rear seats folded flat. Additionally, the rear seats feature a 60/40 split-fold for flexible cargo configurations, while its one-motion operation makes it quick and easy to use. 


Read full article from How many passengers can the 2018 Honda CR-V seat?


车肉是什么意思?_百度知道



车肉是什么意思?_百度知道

车肉就是,起步、超车等加速时,油门踩下去了,档位也对,但车速提的比较慢,达不到心理要求。

Read full article from 车肉是什么意思?_百度知道


SSH Port forwarding through multiple hops [.ssh/config]



SSH Port forwarding through multiple hops [.ssh/config]

Anybody that have to work with lab at work knows the pain of connecting to them. Usually labs don't have direct connectivity to the "regular" network and to connect to them involves a series of jumps though different machines. Just SSH connectivity is painful in those scenarios let alone port forwarding. Fortunately you can setup your ~/.ssh/config in such a way that will automate most of it, if not all.


Read full article from SSH Port forwarding through multiple hops [.ssh/config]


GitHub - tsantalis/JDeodorant: JDeodorant



GitHub - tsantalis/JDeodorant: JDeodorant

JDeodorant is an Eclipse plug-in that detects design problems in Java software, known as code smells, and recommends appropriate refactorings to resolve them.

For the moment, the tool supports five code smells, namely Feature Envy, Type/State Checking, Long Method, God Class and Duplicated Code.

  • Feature Envy problems can be resolved by appropriate Move Method refactorings.
  • Type Checking problems can be resolved by appropriate Replace Conditional with Polymorphism refactorings.
  • State Checking problems can be resolved by appropriate Replace Type code with State/Strategy refactorings.
  • Long Method problems can be resolved by appropriate Extract Method refactorings.
  • God Class problems can be resolved by appropriate Extract Class refactorings.
  • Duplicated Code problems can be resolved by appropriate Extract Clone refactorings.


Read full article from GitHub - tsantalis/JDeodorant: JDeodorant


Refactor Out Code Smell With JDeodrant - DZone Java



Refactor Out Code Smell With JDeodrant - DZone Java

I got to know about JDeodorant- a tool for identifying bad smells in code and helping it to refactor. I got curious and downloaded its Eclipse plugin, I then picked the first bad smell code which Martin Fowler explains in his book: "Refactoring: Improving the design of existing code". I tried my hand at refactoring a long method by Extract Method refactor move. Here's the long method:


Read full article from Refactor Out Code Smell With JDeodrant - DZone Java


GitHub - troessner/reek: Code smell detector for Ruby



GitHub - troessner/reek: Code smell detector for Ruby

Reek is a tool that examines Ruby classes, modules and methods and reports any Code Smells it finds.

For an excellent introduction to Code Smells and Reek check out this blog post or that one. There is also this talk from RubyConfBY (there is also a slide deck if you prefer that).


Read full article from GitHub - troessner/reek: Code smell detector for Ruby


Continuous Inspection | SonarSource



Continuous Inspection | SonarSource

This paper details the key challenges in code quality management. It then introduces the Continuous Inspection paradigm and illustrates how it addresses those challenges, supporting thousands of enterprises in improving their software quality.

By raising its visibility for all stakeholders throughout the life cycle, Continuous Inspection enables enterprises to embrace code quality whole-heartedly.


Read full article from Continuous Inspection | SonarSource


Automating Code Reviews - Software People Inspiring



Automating Code Reviews - Software People Inspiring

This comes up quite often these days, so I thought I'd scribble my thoughts down, for posterity if nothing else.

I increasingly come across dev teams who have adopted a policy where every check-in needs to be reviewed before it can be accepted. In many cases, this has created a bottleneck while developers waiting to get a green build are stuck on the availability of their peers to do the reviewing.

Imagine, every time you want to check your code in, you have to wait for a tester to put your code through its paces. We knew that was a major bottleneck, so we started automating our tests. If the tester would normally check to see what happens if a customer cancels an order, we would write a unit test for the cancel() function of an order.

It's really not much different for code inspections. If a reviewer would normally check that no classes are too big (say, having more than 200 lines of code), we could write a bit of code to inspect every class and report any that exceed our limit.

A pretty comprehensive code inspection could cover a large amount of code, checking for a whole range of issues, in a tiny fraction of the time it takes a human. More importantly, those checks could be run any time. No need to wait for Jenny to get off the phone, or Rajesh to come back from lunch. You'd no longer be blocked.

This, of course, takes some considerable investment early on to develop the right suite of automated quality checks. But I see more and more teams struggling to maintain the pace of development and high code quality, and such an investment really pays for itself many times over, even on relatively short timescales.

It's for this reason that I'm going to be giving Continuous Inspection a big push in 2018. I think most teams should seriously consider it.

Read full article from Automating Code Reviews - Software People Inspiring


[JavaSpecialists 165] - Starvation with ReadWriteLocks



[JavaSpecialists 165] - Starvation with ReadWriteLocks

Welcome to the 165th issue of The Java(tm) Specialists' Newsletter, sent to you from Wall Street, New York City. New York has to date been the most expensive city that I have visited. Not that prices are particularly high in comparison to Crete, but you can purchase almost anything, twenty four hours a day! Usually when I go to New York, my bank sends me urgent emails confirming that I really am spending all that money on my credit card. In contrast, back home in Crete, items are often double the New York price, but there is very little temptation to spend.


Read full article from [JavaSpecialists 165] - Starvation with ReadWriteLocks


Java Holiday Calendar (Day 9): Event Sourcing - DZone Java



Java Holiday Calendar (Day 9): Event Sourcing - DZone Java

Today's tip is about event sourcing, which is a relatively new way of designing database applications. Instead of seeing the database as a representation of the most current state, we would see it as a system of record for all transactions that ever took place in our applications. 


Read full article from Java Holiday Calendar (Day 9): Event Sourcing - DZone Java


Java Memory Leaks: Solutions, Tools, Tutorials & More



Java Memory Leaks: Solutions, Tools, Tutorials & More

Memory management is Java's strongest suit, and one of the many reasons why developers choose Java over other platforms and programming languages. On paper, you create objects and Java would deploy its Garbage Collector to allocate and free up memory. But that's not to say  Java is flawless; in real life, memory leaks do happen, and it happens a lot in Java applications. We put together this guide to arm you with the know-how to detect, avoid, and fix memory leaks in Java.


Read full article from Java Memory Leaks: Solutions, Tools, Tutorials & More


Getting test coverage reports for integration test – George's Techblog



Getting test coverage reports for integration test – George's Techblog

I'm a vociferous supporter of integration tests with an embedded servlet container and in this post I'll show how to get test coverage for the classes touched in those integration tests.

All test coverage gauging tools I know instrument code under test either at build time or run time through Java agents. Because the code under test runs in the servlet container's class loader, it may either not be properly instrumented or evade recording of its execution.


Read full article from Getting test coverage reports for integration test – George's Techblog


When Is the Best Time of Year to Buy Large Appliances?



When Is the Best Time of Year to Buy Large Appliances?

The exception to point number one is refrigerators. Unlike the other major appliances, most manufacturers roll out their new models of refrigerators in the summer. This means that last year's models get discounted during the spring.


Read full article from When Is the Best Time of Year to Buy Large Appliances?


Java Holiday Calendar 2016 (Day 15): Don't Optimize Now! - DZone Java



Java Holiday Calendar 2016 (Day 15): Don't Optimize Now! - DZone Java

The JVM is also using a scheme called Code Flattening , which means that it is able to "roll up" method calls and consider the code as a larger flow of operations. This way, it is able to determine the possible paths the program can take and consider these paths individually and optimize them. For example, identical range checking that takes place in several methods that call each other can be eliminated. Another example is that dead paths (e.g. where an "if"-branch is using a constant expression) can be eliminated altogether.

Another means of optimization is Escape Analysis, which is used to determine if an object is visible outside a certain scope. If not, the object can be allocated on the stack rather than on the heap, making the program run much faster.


Read full article from Java Holiday Calendar 2016 (Day 15): Don't Optimize Now! - DZone Java


Minborg's Java Pot



Minborg's Java Pot

In my previous post, I wrote about how to use Transactions in an easy way using Speedment where we updated two bank accounts atomically. As you all might know, transactions are a way of combining a number of database operation into a single operation that is atomically executed.

But transactions are not only about updating the database but also about performing atomic reads. With Speedment, we can compute values atomically using Java streams and then return the result to something outside the scope of the transaction in an easy way.

Read full article from Minborg's Java Pot


5 Advanced Java Debugging Techniques Every Developer Should Know About



5 Advanced Java Debugging Techniques Every Developer Should Know About

BTrace is a helpful tool that lets you run Java-like scripts on top of a live JVM to capture or aggregate any form of variable state without restarting the JVM or deploying new code. This enables you to do pretty powerful things like printing the stack traces of threads, writing to a specific file, or printing the number of items of any queue or connection pool and many more.


Read full article from 5 Advanced Java Debugging Techniques Every Developer Should Know About


Java Holiday Calendar 2016 (Day 25): The Complete Deck - DZone Java



Java Holiday Calendar 2016 (Day 25): The Complete Deck - DZone Java

Thank you all for following this year's Java Calendar. Here is the complete list with all the articles:


Read full article from Java Holiday Calendar 2016 (Day 25): The Complete Deck - DZone Java


Install Apps from 3rd party in macOS Sierra – VIVOの PUB



Install Apps from 3rd party in macOS Sierra – VIVOの PUB

When installed apps from 3rd party or Internet download, macOS always prompt "Downloaded .app is damaged and can't be opened".

The solution is really simple:

Run the following command before launching the app:

sudo spctl --master-disable


Read full article from Install Apps from 3rd party in macOS Sierra – VIVOの PUB


LeakCanary: Detect all memory leaks! – Square Corner Blog – Medium



LeakCanary: Detect all memory leaks! – Square Corner Blog – Medium

In Square Register, we draw the customer's signature on a bitmap cache. This bitmap is the size of the device's screen, and we had a significant number of out of memory (OOM) crashes when creating it.


Read full article from LeakCanary: Detect all memory leaks! – Square Corner Blog – Medium


Detect All Memory Leaks With LeakCanary



Detect All Memory Leaks With LeakCanary

We've all been bitten by memory leaks that cause OutOfMemoryError crashes in our apps at some point, sometimes even in production. Square's Pierre-Yves Ricau solved this problem by building LeakCanary, a tool to detect and help you fix memory leaks before they ship. In his Droidcon 2015 NYC talk, Pierre teaches techniques to dramatically reduce OutOfMemoryError crashes and easily fix reference leaks, making your app more stable and usable.


Read full article from Detect All Memory Leaks With LeakCanary


Java 8 lambdas and the GC - Objection



Java 8 lambdas and the GC - Objection

Ok, so I was playing with WeakReferences in java (as you do) and had written some code where you could add lots of listeners/subscribers/whatever to this …well publisher I guess. There would be only one publisher, but potentially lots of subscribers, so I figured I'd try wrapping the listeners in WeakReferences, so I wouldn't have to worry about having to match each addListener() call with a removeListener() to avoid a potential memory leak.


Read full article from Java 8 lambdas and the GC - Objection


AWS Developer Forums: Lambda leaking memory with dire ...



AWS Developer Forums: Lambda leaking memory with dire ...

I'm using somewhat controversial, albeit absolutely legitimate use case for AWS Lambda functions: recursion. A lambda function, just before termination, is using AWS.Lambda.invokeAsync() to invoke itself. There is some extra code to prevent accidental uncontrolled multiplication of execution threads, there is only one instance running at the time. The problem is that with each invocation the amount of memory used increases. The first invocation is around 15MB, then it's gradually increasing up to the limit specified in settings, in this case 128MB. What happens then is somewhat unpredictable. In most cases some garbage collection (or probably restart of node.js instance) takes place and the next invocation is again below 20MB. Occasionally, the invocations will fail without apparent reason and the recursion will stop. Below is such a sequence of events, additional suspicious behaviour is that GUID of the invocations were the same (5436599f-7975-11e4-aee2-172cf7400691) in the few terminal starts.

Read full article from AWS Developer Forums: Lambda leaking memory with dire ...


Udacity Android Developer Nanodegree: a brief review — Exploits of a Programmer | Vicky Chijwani



Udacity Android Developer Nanodegree: a brief review — Exploits of a Programmer | Vicky Chijwani

Since I don't have enough time to write up a full review, I've just copy-pasted my brief review from Udacity's website below. Maybe I'll update this someday to a more comprehensive review of the program.


Read full article from Udacity Android Developer Nanodegree: a brief review — Exploits of a Programmer | Vicky Chijwani


The 10 Most Common Mistakes JavaScript Developers Make | Toptal



The 10 Most Common Mistakes JavaScript Developers Make | Toptal

Today, JavaScript is at the core of virtually all modern web applications. The past several years in particular have witnessed the proliferation of a wide array of powerful JavaScript-based libraries and frameworks for single page application (SPA) development, graphics and animation, and even server-side JavaScript platforms. JavaScript has truly become ubiquitous in the world of web app development and is therefore an increasingly important skill to master.


Read full article from The 10 Most Common Mistakes JavaScript Developers Make | Toptal


Leaking Inner Class | Android Smells Catalogue



Leaking Inner Class | Android Smells Catalogue

Non-static inner classes holds a reference to the outer class. This could lead to a memory leak.

Here are two examples: One inner class and one anonymous inner class.


Read full article from Leaking Inner Class | Android Smells Catalogue


Getting Started with Eclipse - DZone - Refcardz



Getting Started with Eclipse - DZone - Refcardz

Eclipse IDE is a cross-platform, multi-purpose, open-source Integrated Development Environment. It was initiated as Java IDE, but quickly became an extensible multi-language development tool that is widely used to develop projects in Java, JavaScript, PHP, C++, Scala, and a lot of other languages. It's highly extensible and supports the vast majority of industrial technologies.


Read full article from Getting Started with Eclipse - DZone - Refcardz


尝试Java加锁新思路:原子变量和非阻塞同步算法 - 简书



尝试Java加锁新思路:原子变量和非阻塞同步算法 - 简书

我们以非阻塞的栈为例说明非拥塞算法的设计思路。创建非阻塞算法的关键在于将原子修改的范围缩小到单个变量上,同时保证数据一致性。

栈是最简单的链式数据结构:每个元素仅仅指向一个元素,每个元素也仅被一个元素引用,关键的操作入栈(push)和出栈(pop)都是针对于栈顶元素(top)的。因此每次操作只需要保证栈顶元素的一致性,将原子操作的范围控制在指向栈顶元素的引用即可。实例代码如下:


Read full article from 尝试Java加锁新思路:原子变量和非阻塞同步算法 - 简书


由一道 Java finally 执行顺序的题引发的思考 | 赵俊的博客



由一道 Java finally 执行顺序的题引发的思考 | 赵俊的博客

但我相信开发工具是不会骗我的,一定是我自己的理解有问题,然后自己又写了几个类似的例子来测试,最后得出的结论是: finally 语句块在 return 语句之后,return 返回之前执行,可能这句话不是那么容易理解,来看下面的例子吧,看完我相信你应该能明白我这句话是什么意思了。


Read full article from 由一道 Java finally 执行顺序的题引发的思考 | 赵俊的博客


Java未来也许不再是电商的首选开发语言 | 曹祖鹏的Blog



Java未来也许不再是电商的首选开发语言 | 曹祖鹏的Blog

  • 在开发体验、工程化方面要继续强化。Java8+Spring boot+Lombok使用体验经常让我感觉不到在写繁琐的Java。
  • 微服务的领域驱动设计特别重要,而在领域驱动设计实现中Java是主流,目前还没有太好的替代语言。
  • 强化目前的JVM上的语言生态,包括Kotlin、Scala等,也许会有下一个杀手应用出现,抓住类似AI这样的风口机会。


Read full article from Java未来也许不再是电商的首选开发语言 | 曹祖鹏的Blog


Crisp's Blog » Using the 7 deadly sins to motivate your workforce



Crisp's Blog » Using the 7 deadly sins to motivate your workforce

Be generous with compliments to your developers for a short while. Make them addicted to your praise. Ensure they feel proud over their achievements and in their knowledge of all things related to their work. Then stop. This is very important! They will start to doubt themselves and work twice as hard just to get a single kind word from you. They will be eating out of your hand in no time.


Read full article from Crisp's Blog » Using the 7 deadly sins to motivate your workforce


Chain of Responsibility Design Pattern in Java: Before and after



Chain of Responsibility Design Pattern in Java: Before and after

The client is responsible for stepping through the "list" of Handler objects, and determining when the request has been handled.


Read full article from Chain of Responsibility Design Pattern in Java: Before and after


Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts