Category Archives: How to Fix

Error in compiling pcl1.9.1: “class vtkdatasetmapper” has no member named “immediatemode rendering off”

PCL1.9.1 + VTK8.2.0 + CUDA10.0 source code compilation:

pcl_1.9.1/apps/modeler/src/surface_actor_item.cpp:87:11: error: ‘class vtkDataSetMapper’ has no member named ‘ImmediateModeRenderingOff’
   mapper->ImmediateModeRenderingOff ();

and

pcl_1.9.1/apps/modeler/src/points_actor_item.cpp:90:11: error: ‘class vtkDataSetMapper’ has no member named ‘ImmediateModeRenderingOff’
   mapper->ImmediateModeRenderingOff();

After a search, found after vtk8.10 version of vtkMapper ImmediateModeRenderingOff () method is removed, so in order to let pcl1.9.1 code compiled through, just need to errors in the corresponding to one line of code commented out of the can, or change to a lower version of VTK. I am two lines of code by commenting out the error, because ImmediateModeRenderingOff () method isn’t necessary operation, finally passed the compilation.

Qt5_ Various paths

1. QT5.3.2 — VS2010 — OpenGL
1.1. The path of the required DLL file at the time of publication
F: \ ZC_software_installDir \ Qt5.3.2 _vs2010\5.3 \ msvc2010_opengl \ bin
1.2, Platforms folder
F: \ ZC_software_installDir \ Qt5.3.2 _vs2010\5.3 \ msvc2010_opengl \ plugins \ platforms
ZC: it feels platforms folder also belong to the plug-in, but seemingly qt. Conf no about its configuration items (have?Is it QLibraryInfo: : PrefixPath?To be tested and verified)…
1.3, libeay32.dll and ssleay32.dll (for SSL access to WebView)
F: \ ZC_software_installDir \ Qt5.3.2 _vs2010 \ Tools \ QtCreator \ bin \ libeay32 DLL
F: \ ZC_software_installDir \ Qt5.3.2 _vs2010 \ Tools \ QtCreator \ bin \ ssleay32 DLL
2,
3,
4,
5,
 

Reproduced in: https://www.cnblogs.com/cppskill/p/5652216.html

Cmake compile opencv report error qtcore_ DIR QtOpenglDIR QtGui_ Dir ffmpeg loading failed

CMAKE compiler OpenCV source code error
Cmake compile opencv source code error: 1.
error prompt QtGui_DIR QtOpengl_DIR QtCore_DIR errors, such as said not set QT environment error
2. F ‘fmpeg download failed (timeout)
Qtgui_dir Qtopengl_dir Qtcore_gui, etc
Solution: in opencv source code file CMakeLists. TXT file to add the following code (can be added in the file header)
according to your own error set the appropriate path, such as:
set (Qt5Core_DIR “C:/Qt/Qt5.9.6/5.9.6/mingw53_32/lib/cmake/Qt5Core”)
set (Qt5Gui_DIR “C:/Qt/Qt5.9.6/5.9.6/mingw53_32/lib/cmake/Qt5Gui”)
set (Qt5Widgets_DIR “C:/Qt/Qt5.9.6/5.9.6/mingw53_32/lib/cmake/Qt5Widgets”)
set (Qt5Test_DIR “C:/Qt/Qt5.9.6/5.9.6/mingw53_32/lib/cmake/Qt5Test”)

FFMPEG library file download failed (timeout)

/ffmpeg> Copy the three files to Source/. Cache /ffmpeg, but change the file name to the md5-file name of the file.
>
>
# do_copy “opencv_ffmpeg_64. DLL” “2 cc08fc4fef8199fe80e0f126684834f” “https://raw.githubusercontent.com/opencv/opencv_3rdparty/8041bd6f5ad37045c258904ba3030bb3442e3911/ffmpeg/opencv_ffmpeg_64.dll” “D:/workspace/opencv_contrib_3. 4.3/opencv – rule 3.4.3 – Build/3 rdparty/ffmpeg”
# missing “D:/workspace/opencv_contrib_3. 4.3/opencv – rule 3.4.3 – Build/3 rdparty/ffmpeg/opencv_ffmpeg_64. DLL”
# check_md5 “D:/workspace/opencv_contrib_3. 4.3/opencv. – rule 3.4.3 – Source/cache/ffmpeg/2 cc08fc4fef8199fe80e0f126684834f – opencv_ffmpeg_64. DLL”
The meaning of the above said from the download link https://raw.githubusercontent.com/opencv/opencv_3rdparty/8041bd6f5ad37045c258904ba3030bb3442e3911/ffmpeg/opencv_ffmpeg_64.dll copy dynamic library to D:/workspace/opencv_contrib_3. 4.3/opencv – rule 3.4.3 – Build/3 rd Party /ffmpeg folder, and give the MD5 value

opencv_ffmpeg_64.dll
opencv_ffmpeg_64.dll https://raw.githubusercontent.com/opencv/opencv_3rdparty/8041bd6f5ad37045c258904ba3030bb3442e3911/ffmpeg/opencv_ffmpeg_64.dll
opencv_ffmpeg_64. DLL md5 value is 2 cc08fc4fef8199fe80e0f126684834f
Download to Build/3 rdparty/ffmpeg/folder
after the download is
the Build/3 rdparty/ffmpeg/opencv_ffmpeg_64. DLL
manually copy files to the Source folder and name: Md5 + name of the file, like this
the Source/cache/ffmpeg/2 cc08fc4fef8199fe80e0f126684834f – opencv_ffmpeg_64. DLL.
the other opencv_ffmpeg DLL and ffmpeg_version cmake method is the same.
note that carriage return after cmake file copy link to the browser, then right click on the select save as TXT file, to Build/3 rdparty/ffmpeg/folder, and then to the folder rename file suffix. TXT, thus cmake file with respect to OK, and then copied to the Source/cache/ffmpeg/file, rename, front ➕ md5.
click Configure again with respect to OK
supported

Cmake error on qt5core

CMAKE error on Qt5Core

The problem
I’m trying to build a source code using QT5 using CMake. It exits this error:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

CMake Error at CMakeLists.txt:20 (find_package):


By not providing "FindQt5Core.cmake" in CMAKE_MODULE_PATH this project has


asked CMake to find a package configuration file provided by "Qt5Core", but


CMake did not find one.

 


Could not find a package configuration file provided by "Qt5Core" with any


of the following names:

 


Qt5CoreConfig.cmake


qt5core-config.cmake

 


Add the installation prefix of "Qt5Core" to CMAKE_PREFIX_PATH or set


"Qt5Core_DIR" to a directory containing one of the above files. If


"Qt5Core" provides a separate development package or SDK, be sure it has


been installed.

solution
I checked the QT5 package and it seems to be installed. The naming of the QT4 and QT5 packages in Ubuntu has been changed and dropped.
All you need is wrapping qtbase5-dev Once I installed it, this bug was resolved:

1

$ sudo apt install qtbase5-dev

[VTK] header file and lib file name often used in VTK

1. Commonly used header files

#define vtkRenderingCore_AUTOINIT 4(vtkInteractionStyle,vtkRenderingFreeType,vtkRenderingFreeTypeOpenGL,vtkRenderingOpenGL)
#define vtkRenderingVolume_AUTOINIT 1(vtkRenderingVolumeOpenGL)

//vtk includes
#include "vtkButtonWidget.h"
#include "vtkRenderer.h"
#include "vtkRenderWindow.h"
#include "vtkRenderWindowInteractor.h"
#include "vtkPolyData.h"
#include "vtkPolyDataMapper.h"
#include "vtkSphereSource.h"
#include "vtkSmartPointer.h"
#include "vtkBoxWidget.h"
#include "vtkCommand.h"
#include "vtkActor.h"
#include "vtkCamera.h"
#include "vtkConeSource.h"
#include "vtkInteractorStyleTrackballCamera.h"
#include "vtkTransform.h"
#include "vtkProperty2D.h"
#include "vtkVersion.h"
#include "vtkOrientationMarkerWidget.h"
#include "vtkAxesActor.h"
#include "vtkPropAssembly.h"
#include "vtkVolume.h"
#include "vtkLookupTable.h"
#include "vtkDICOMImageReader.h"
#include "vtkBMPReader.h"
#include "vtkPiecewiseFunction.h"
#include "vtkColorTransferFunction.h"
#include "vtkVolumeProperty.h"
#include "vtkVolumeRayCastCompositeFunction.h"
#include "vtkVolumeRayCastMapper.h"
#include "vtkImageCast.h"
#include "vtkOpenGLVolumeTextureMapper3D.h"
#include "vtkImageThreshold.h"
#include "vtkImageShiftScale.h"
#include "vtkImageData.h"
#include "vtkStructuredPointsWriter.h"
#include "vtkStructuredPointsReader.h"
#include "vtkImageShrink3D.h"
#include "vtkImageGaussianSmooth.h"
#include "vtkPlanes.h"
#include "vtkPlane.h"
#include "vtkFixedPointVolumeRayCastMapper.h"
#include "vtkImageMask.h"
#include "vtk3DWidget.h"
#include "vtkProperty.h"  
#include "vtkContourFilter.h"  
#include "vtkPolyDataNormals.h"  
#include "vtkOutlineFilter.h"  
#include "vtkStripper.h"  
#include "vtkSmoothPolyDataFilter.h"  
#include "vtkImagePlaneWidget.h"
#include "vtkImageFlip.h"  
#include "vtkImageViewer.h"  
#include "vtkLineSource.h"  
#include "vtkDataSetMapper.h"  
#include "vtkPolyDataWriter.h"  
#include "vtkPolyDataReader.h"
#include "vtkImageMapToColors.h"
#include "vtkImageActor.h"
#include "vtkVolume16Reader.h"
#include "vtkImplicitPlaneWidget.h"
#include "vtkLODActor.h"
#include "vtkTexturedButtonRepresentation.h"
#include "vtkGlyph3D.h"
#include "vtkAppendPolyData.h"
#include "vtkClipPolyData.h"
#include "vtkSphere.h"
#include "vtkSampleFunction.h" 
#include "vtkCubeAxesActor2D.h"
#include "vtkCutter.h"
#include "vtkLODProp3D.h"
#include "vtkWin32RenderWindowInteractor.h"
#include "vtkCubeSource.h"
#include "vtkSliderWidget.h"
#include "vtkSliderRepresentation3D.h"
#include "vtkInteractorStyleUser.h"
#include "vtkXMLImageDataWriter.h"
#include "vtkTransformPolyDataFilter.h"
#include "vtkXMLPolyDataReader.h"
#include "vtkWindowToImageFilter.h"
#include <vtkPointPicker.h>
#include <vtkObjectFactory.h>
#include <vtkRendererCollection.h>
#include "vtkAffineWidget.h"
#include "vtkAffineRepresentation2D.h"
#include "vtkPlaneSource.h"
#include <vtkAffineWidget.h>
#include <vtkAppendPolyData.h>
#include <vtkInteractorStyleSwitch.h>
#include <vtkTextWidget.h>
#include <vtkTextActor.h>
#include <vtkTextProperty.h>
#include <vtkTextRepresentation.h>
#include <vtkContourWidget.h>
#include <vtkOrientedGlyphContourRepresentation.h>
#include <vtkDebugLeaks.h>
#include <vtkCellArray.h>
#include <vtkPoints.h>
#include <vtkMath.h>
#include <vtkWidgetEvent.h>
#include <vtkWidgetEventTranslator.h>
#include <vtkXMLPolyDataReader.h>
#include <vtkImplicitPlaneRepresentation.h>
#include "vtkBYUReader.h"
#include "vtkPLYReader.h"
#include "vtkSurfaceReconstructionFilter.h"
#include <vtkImageCanvasSource2D.h>
#include <vtkInteractorStyleImage.h>
#include <vtkPointHandleRepresentation2D.h>
#include <vtkSeedWidget.h>
#include <vtkSeedRepresentation.h>
#include "vtkWindowLevelLookupTable.h"
#include "vtkCaptionActor2D.h"
#include "vtkCylinderSource.h"
#include "vtkPropCollection.h"
#include "vtkTextProperty.h"
#include "vtkCylinderSource.h" 
#include "vtkAnnotatedCubeActor.h" 
#include "vtkAssembly.h" 
#include <vtkCubeAxesActor.h>
#include <vtkTextProperty.h>
#include <vtkActorCollection.h>
#include <vtkSuperquadricSource.h>
#include <vtkNew.h>
#include <vtkPlatonicSolidSource.h>
#include <vtkLODActor.h>
#include <vtkLight.h>
#include <vtkTextProperty.h>
#include <vtkObjectFactory.h>
#include <vtkActor2D.h>
#include <vtkTextProperty.h>
#include <vtkTextMapper.h>
#include <vtkTextProperty.h>
#include <vtkSliderWidget.h>
#include <vtkWidgetEvent.h>
#include <vtkCallbackCommand.h>
#include <vtkWidgetEventTranslator.h>
#include <vtkSliderWidget.h>
#include "vtkBMPWriter.h"
#include "vtkJPEGReader.h"
#include "vtkSliderRepresentation2D.h"
#include "vtkTextActor.h"
#include "vtkTexturedButtonRepresentation2D.h"
#include "vtkDistanceRepresentation3D.h"
#include "vtkDistanceWidget.h"
#include "vtkAngleRepresentation3D.h"
#include "vtkAngleWidget.h"
#include "vtkImageViewer2.h"
#include "vtkTextActor.h"
#include "vtkCornerAnnotation.h"
#include "vtkTextureMapToCylinder.h"
#include "vtkTransformTextureCoords.h"
#include "vtkImageViewer2.h"
#include "vtkDICOMImageReader.h"
#include "vtkOpenGLPolyDataMapper.h"
#include "vtkClipVolume.h"
#include "vtkImageToPolyDataFilter.h"
#include "vtkContourFilter.h"
#include "vtkImageDataGeometryFilter.h"
#include "vtkWarpScalar.h"
#include "vtkPolyDataToImageStencil.h"
#include "vtkImageStencil.h"
#include "vtkMetaImageWriter.h"
#include "vtkImageToImageStencil.h"
#include "vtkPolyDataToImageStencil.h"
#include <vtkVersion.h>
#include <vtkSmartPointer.h>
#include <vtkPolyData.h>
#include <vtkImageData.h>
#include <vtkSphereSource.h>
#include <vtkMetaImageWriter.h>
#include <vtkPolyDataToImageStencil.h>
#include <vtkImageStencil.h>
#include <vtkPointData.h>
#include <vtkCutter.h>
#include <vtkPlane.h>
#include <vtkStripper.h>
#include <vtkLinearExtrusionFilter.h>
#include <vtkXMLPolyDataWriter.h>
#include <vtkImageData.h>
#include <vtkMetaImageReader.h>
#include <vtkSmartPointer.h>
#include <vtkInteractorStyleImage.h>
#include <vtkRenderer.h>
#include <vtkImageActor.h>
#include <vtkImageMapper3D.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkTesting.h>
#include "vtkAlgorithmOutput.h"
#include "vtkMassProperties.h"
#include <vtkPolyDataMapper.h>
#include <vtkActor.h>
#include <vtkSmartPointer.h>
#include <vtkRenderWindow.h>
#include <vtkRenderer.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkPolyData.h>
#include <vtkSphereSource.h>
#include <vtkWindowToImageFilter.h>
#include <vtkPNGWriter.h>
#include "vtkRenderLargeImage.h"
#include "vtkPropCollection.h"
#include "vtkVolumeRayCastMapper.h"
#include "vtkFrustumCoverageCuller.h"
#include <vtkCullerCollection.h>
#include "vtkType.h"
#include "vtkImageDataGeometryFilter.h"
#include "vtkImageClip.h"
#include "vtkExtractVOI.h"
#include "vtkInformation.h"
#include "vtkTriangleFilter.h"

2. Commonly used LIB files

wbemuuid.lib
d3d9.lib
glu32.lib
opengl32.lib
libjasperd.lib
libjpegd.lib
libpngd.lib
libtiffd.lib
IlmImfd.lib
LVTCodec.lib
opencv_calib3d244d.lib
opencv_core244d.lib
opencv_features2d244d.lib
opencv_flann244d.lib
opencv_highgui244d.lib
opencv_imgproc244d.lib
opencv_legacy244d.lib
opencv_ml244d.lib
opencv_video244d.lib
vtkalglib-6.0.lib
vtkChartsCore-6.0.lib
vtkCommonColor-6.0.lib
vtkCommonComputationalGeometry-6.0.lib
vtkCommonCore-6.0.lib
vtkCommonDataModel-6.0.lib
vtkCommonExecutionModel-6.0.lib
vtkCommonMath-6.0.lib
vtkCommonMisc-6.0.lib
vtkCommonSystem-6.0.lib
vtkCommonTransforms-6.0.lib
vtkDomainsChemistry-6.0.lib
vtkDICOMParser-6.0.lib
vtkexoIIc-6.0.lib
vtkexpat-6.0.lib
vtkFiltersAMR-6.0.lib
vtkFiltersExtraction-6.0.lib
vtkFiltersCore-6.0.lib
vtkFiltersGeneral-6.0.lib
vtkFiltersFlowPaths-6.0.lib
vtkFiltersGeneric-6.0.lib
vtkFiltersGeometry-6.0.lib
vtkFiltersHybrid-6.0.lib
vtkFiltersImaging-6.0.lib
vtkFiltersHyperTree-6.0.lib
vtkFiltersModeling-6.0.lib
vtkFiltersParallel-6.0.lib
vtkFiltersParallelImaging-6.0.lib
vtkFiltersSelection-6.0.lib
vtkFiltersProgrammable-6.0.lib
vtkFiltersSources-6.0.lib
vtkFiltersTexture-6.0.lib
vtkFiltersStatistics-6.0.lib
vtkFiltersVerdict-6.0.lib
vtkfreetype-6.0.lib
vtkftgl-6.0.lib
vtkGeovisCore-6.0.lib
vtkGUISupportMFC-6.0.lib
vtkgl2ps-6.0.lib
vtkhdf5_hl-6.0.lib
vtkhdf5-6.0.lib
vtkImagingColor-6.0.lib
vtkImagingCore-6.0.lib
vtkImagingFourier-6.0.lib
vtkImagingSources-6.0.lib
vtkImagingGeneral-6.0.lib
vtkImagingHybrid-6.0.lib
vtkImagingMath-6.0.lib
vtkImagingMorphological-6.0.lib
vtkImagingStatistics-6.0.lib
vtkImagingStencil-6.0.lib
vtkInfovisCore-6.0.lib
vtkInfovisLayout-6.0.lib
vtkInteractionImage-6.0.lib
vtkInteractionStyle-6.0.lib
vtkInteractionWidgets-6.0.lib
vtkIOAMR-6.0.lib
vtkIOCore-6.0.lib
vtkIOExodus-6.0.lib
vtkIOEnSight-6.0.lib
vtkIOExport-6.0.lib
vtkIOGeometry-6.0.lib
vtkIOImage-6.0.lib
vtkIOImport-6.0.lib
vtkIOInfovis-6.0.lib
vtkIOLegacy-6.0.lib
vtkIOLSDyna-6.0.lib
vtkIOMINC-6.0.lib
vtkIOMovie-6.0.lib
vtkIONetCDF-6.0.lib
vtkIOParallel-6.0.lib
vtkIOPLY-6.0.lib
vtkIOSQL-6.0.lib
vtkIOVideo-6.0.lib
vtkIOXML-6.0.lib
vtkIOXMLParser-6.0.lib
vtkjpeg-6.0.lib
vtkjsoncpp-6.0.lib
vtklibxml2-6.0.lib
vtkmetaio-6.0.lib
vtkNetCDF_cxx-6.0.lib
vtkNetCDF-6.0.lib
vtkoggtheora-6.0.lib
vtkParallelCore-6.0.lib
vtkpng-6.0.lib
vtkRenderingOpenGL-6.0.lib
vtkproj4-6.0.lib
vtkRenderingAnnotation-6.0.lib
vtkRenderingContext2D-6.0.lib
vtkRenderingCore-6.0.lib
vtkRenderingFreeType-6.0.lib
vtkRenderingFreeTypeOpenGL-6.0.lib
vtkRenderingGL2PS-6.0.lib
vtkRenderingHybridOpenGL-6.0.lib
vtkRenderingImage-6.0.lib
vtkRenderingLabel-6.0.lib
vtkRenderingLOD-6.0.lib
vtkRenderingVolume-6.0.lib
vtkRenderingVolumeAMR-6.0.lib
vtkRenderingVolumeOpenGL-6.0.lib
vtksqlite-6.0.lib
vtksys-6.0.lib
vtkTestingGenericBridge-6.0.lib
vtkTestingIOSQL-6.0.lib
vtkTestingRendering-6.0.lib
vtktiff-6.0.lib
vtkverdict-6.0.lib
vtkViewsCore-6.0.lib
vtkViewsContext2D-6.0.lib
vtkViewsGeovis-6.0.lib
vtkViewsInfovis-6.0.lib
vtkzlib-6.0.lib

Recording some pits of VTK + QT

QAlgorithms. H: QAlgorithms. H: QAlgorithms. H: QAlgorithms. H: QAlgorithms
2. When cmake compiles VTK, select x64, enter the release mode that you want to select when you build VTK (otherwise there will be lib missing)
3. VS remember to start in administrator mode
 

Experience of learning VTK

Now start to learn VTK, what can not yet.

simple view, learning VTK is far more promising than learning OpenGL.

main is feeling VTK is open source packages, which have written a lot of the underlying function, data structure and data organization and relative to our own writing function rich and robust.

>

On Windows, VTK installation is complicated. Because at present is not very familiar with, will not write temporarily. I haven’t learned how to set the right variables.

I’m sorry.

VTK, possibly the Visualization Toolkit If you want to learn it well, consult two books

VTK User’s Guide and VTK tool kit. It’s available on its official website.

Open source stuff is really good.

Code programming skills for novice programmers

Programmers aspire to work on teams where they spend 30% of their time writing code and 70% of their time drinking coffee and talking about how to get the product right.
Software work should be a high intellectual activity that integrates technology and art, and the project manager should be a person with a high understanding of the objective laws of quality, scope and schedule. “Work efficiently, live happily” should be the programmer’s motto.
The reality is that the team is overloaded with requirements while fixing endless bugs.
After a little eve, the project manager endure red eyes staring at us all night long overtime, quality specialist urged quality data again and again is not enough, software work has been irreparably reduced to physical labor, let alone happy life, life is gone.
Well, all of the above may be true. Project managers and quality specialists are devils who don’t understand objective laws and have no sympathy, leaving us programmers with no dignity and humble existence.
Just, there is a sentence held for a long time: “wake up, all of this, because your code is too bad, you make too many bugs!” .
You may complain that this is clearly the result of requirements changing too fast and leadership planning being too tight.
Well, that sounds reasonable, but you should know that requirement change itself is the objective law of software, and the leader requires progress, hehe, you can also think of it as an objective law.
This isn’t an argument for who causes programmers to work too much overtime, and I’m not going to give you a recipe for turning everyone into an expert programmer overnight, but at least here are some solid lessons and tips. In short, let everyone see a little more to get a little more real value.
Don’t start writing code right away
You may be in a hurry, or you may be itching to try a little programming trick you learned yesterday. Take it easy, I’m telling you, there are more important things to do before you get the requirements and are ready to write your first line of code.
I can’t stress enough how important this is, but in all of the code I’ve written that I’ve been very happy with, I’ve used this approach, and it has eliminated 90% of the bugs that would otherwise have been tested, or even achieved zero bugs, although it may take a while to get there.
Once you have the requirements, you should first ask yourself if you have fully understood the requirements. Once the answer is yes, we can begin:
1) Find an hour in your busy schedule that you have complete control over, that is your own hour, and that will be free of interruptions or interruptions that will prevent you from implementing this method. Remember that this one hour is very important, more important than all the activities you will perform later, and it is definitely worth it.
2) in the upper part of a piece of paper to write down “the demand characteristics of the normal process and scope of influence”, and then at the bottom of the paper to start writing down the demand characteristics of normal process contains a detailed content, which will probably be used to library function, which will provide the interface, will affect version upgrades, whether affect the resource file, whether to affect the original interface and so on.
3) On the top of the second piece of paper, write down “all the abnormal scenarios of this requirement feature and some mistakes I often made in the past”, and then write down one by one at the bottom of the paper.
4) Keep repeating steps 2) and 3).
You may find it’s not just about writing needs to clarify the material, I want to tell you that this is two different things, it is not a quality specialist activity requires you to do the quality of the process, it is a deep dialogue between you and yourself, it doesn’t need to tell anyone, don’t need any deliverables output to other fields, it is to oneself a self drive to write good code.
At first you may find hard to write a few can’t write out, or flash across the idea of “this stuff is really useful, don’t try so hard, got up and went to the window to play cups of water to drink, breath the fresh air or in short don’t interrupt, unless the fire in the office, don’t let it continue not to do.
As you work your way down to answer number 20 or 30, you might suddenly feel like, “Oh, I found this subtle anomaly. It’s awesome!” This time you will secretly exclaim a little can not contain their excitement, this means that you are close to the success of the completion, each later to write a line will let yourself moved.
Remember, don’t give up in the middle, and your decision to stick with it will turn that one hour into the most important hour of your entire requirement realization.
Second, forget about the damn quality activities behind
All quality activities outside of coding are based on the company’s distrust of your ability to write code.
This means that companies spend a lot of money on quality specialists, meta-testers, solution testers all because of the waste of code that you don’t write well.
Common some developers, just came to the quality specialist arrangement of quality activities quite complain, “my previous company to do projects do not need to do these things is not the same to finish the project”, “these quality activities, is simply the occupation of coding time.
All of this is fine, but isn’t it a bit of a shame when you write code while you’re saying it?These activities are designed by quality specialists to prevent your bad code from rushing to the customer at one checkpoint after another. When you do nothing to “write good code” and only want to cancel these activities, it can only be understood as a gangster.
So, do quality activities “write good code”?
The answer is no.
It is not a goal or even a method. Your goal in writing code is not to meet quality activity standards, but to achieve zero defects, and you do not write good code just because you do good WBIT testing.
One of the things you need to do is “don’t start writing code right away.” The other thing you need to do is learn to refactor as much as you can, the way you think about refactoring, and learn that refactoring isn’t necessarily about refactoring the original code, it’s about knowing how good code is going to be before you write it.
I ask you to forget quality activities, not to let you do not listen to the quality commissioner, but you should write code in the heart of awe, after the code is written all the activities are you caused waste, you have to eliminate these waste.
Remember, you’re writing code for people to see
I heard a colleague tell a chilling story from his last job:
A colleague of his original company left, left is a pile is very complex, see the c + + code can let a person a neurological disorder, he was gone, found the entire project team no one can take over his module, project managers have to high price and a dinner party in a way that he came to tell the person of whole project two days his code. This guy has a “look, only I can fix it” kind of homecoming attitude. I’m curious why the project manager didn’t fire him earlier. He should have called the police.
Good code is pleasing to the eye, any lack of ability or showing skills to increase people’s dyslexia behavior need to be improved, you can be a few words to clarify the context of your own written code, of course, this also involves you to master as many refactoring methods and refactoring way of thinking.
Another measure of self-judgment is to ask yourself, “With all this code you’ve written, have you ever been tempted by it?” Have you ever written the code and read it over and over again, marveling at how beautiful it is?
As a programmer, one of the many happy moments you’ll recall when you leave the company one day will be the feeling that you just produced a piece of code that caught your eye, not the guy who left the company only to realize how important he was.
Start now, practice deliberately
Do you find yourself maintaining a level of “just enough to complete a story” code for a long time, writing code for years and still being chased by testers?
The reason for this confusion is that it doesn’t matter how many years you’ve been coding, it’s all about deliberate practice.
Such as I mentioned earlier, the practice repeatedly, or you figured out the method of decomposition into every link, deliberately to practice, to get a feedback from the test, and constantly improve, you will slowly from a running all day by the tester, to find himself very easy to achieve quality process standards, then slowly you will find you write code tester is more and more difficult to found the problem, the last state better if you could often write zero defect in the code.
We all seem to know some of these things, but I think there are only two steps to understanding them. First, you need to experience them and practice them yourself. Second, you need to be able to communicate them and make them accessible to others.
So the best way to learn is to experience it yourself, and then write about it, so that you can really understand what you thought you knew, but you didn’t. .
If you want some video tutorials, please contact me at 756576218

Reproduced in: https://www.cnblogs.com/nice107/p/8109208.html

Programmers encounter real wonderful interview experience! Did you win? |Programmers have something to say


Click on the picture, enter the coupon code “CODEBOOK” to place an order, and you can immediately discount 40 yuan
 

The author | heavens Jing

This article is reprinted with authorization from Grass Eaters (ID: kidd_wyl).

Since 2011, I have been doing technical training and consulting work for some enterprises in my spare time, including some training institutions.
As for knowledge output, there is a big difference between enterprise and training institutions.
Say, first in my contact with most of the scene, some companies spend money for You to come over, look from the surface because of technology to promote encountered resistance, but are in fact and the inappropriate, “organization shape/structure is not reasonable, and my role as the core, is based on previous experience to put the facts of the reasonable, and conform to the objective environment adjustment scheme is given, or to replace the boss directly say that” You are fired!”
And training institutions, the vast majority are lured by interests, regardless of all massive investment in advertising, to fool students not hesitate to make a variety of commitments. The vast majority of the institutions I have contacted recruit students under the banner of “looking for a job.”
As a result, as instructors, in addition to teaching them skills, are more or less forced to add interview techniques and DOS and don ‘ts to the curriculum.
For example, I often remind them that even though the decision on employment is made by the technical leadership, the professionalism of HR is also a prerequisite for the leadership’s decision on employment. In many companies, HR even has the right to veto. Not only are their personalities less straightforward than those of straight techies, but many of their behaviors are considered weird by straight techies.
In one of my courses, I’ve mentioned three weird examples from the tech world.
 

A culture of bureaucracy and corruption

 

Ten years ago, a programmer went to a foreign company for an interview. After filling in the basic information, HR first brought four or five pages of psychological test questions to answer. There were multiple choice questions, fill-in-the-blank questions, and drawing questions.
The candidate asks, I am here to apply for the technical position, what is the purpose of doing these questions?According to these answers, we will grade the candidates and then decide whether the candidates’ psychological endurance meets the requirements of the company.
All right, patiently finish these questions, HR looked at it and nodded: “It seems that your mental endurance is quite good, let me briefly introduce some administrative regulations of our company.”
Rule 1: if the general manager comes to work, all employees should stand up to speak to show respect. If the leader’s QQ question, you must immediately reply, otherwise deduct money.
Rule two: before work, must ask the company leadership, whether there are other arrangements, nothing can go away.
Rule three: if the general manager is not off duty, everyone has no right to leave, otherwise immediately fired.
At that time, is in the financial crisis period, the job is not easy to find, this young man patient work for a month, really can not bear such a love of leadership and very strange management style, can only take the initiative to resign.
On the day of his resignation, his immediate leader called him to the office and said that the reason for leaving should be “personal reasons” instead of anything else. He was quite funny and wrote a sentence: “I can’t adapt to the bizarre company regulations, so I have to find a better job”.
 

It’s not an interview, it’s an empty hand.
 

An architect went to interview with a startup team, and the conversation began to go well with each other. Both sides said they had a high degree of commitment.
Finally, the interviewer took out a piece of A4 paper and said, “In order to test your ability to control the overall project and also to give you a chance to show your depth of internal expertise, please come up with a solution based on your previous experience according to the requirements on the paper within one week, and if you have a basic problem, you can be hired.”
After listening to this sentence, the first reaction in my mind is “empty handed white Wolf”, how to understand?
First, at the company’s current size, there was no need for such a complex solution, and second, the solution closely resembled one of the future plans the interviewer described. Therefore, it is likely that because the team cost is limited, we can not hire a special person to do it, and others are not professional, so we have to ask the person to come to the interview to write the plan under the banner of recruitment, and then tell the plan is not feasible and can not be hired.
In fact, the plan had already been stolen and modified to become the team’s own work.
In addition, I have also heard of many companies using headhunters to spy on their competitors in the name of recruitment.

 

You’re dressed too formally. It doesn’t suit us

 

It was an experience that happened to me and I remember it very well because it was so weird.
2005, at that time I do JAVA development in the east shopping, because some time happened with the leadership a few unpleasant, in a rage cast a few resumes, the plan to walk it, Lao Tze do not wait on.
A few days after sending out my resume, I got called for an interview with a software company in India, so I dressed up and went.
The interviewer first asked me to draw the execution process of some existing businesses and explain it in combination with the technical implementation. I was then asked about the use of Oracle databases to address performance concurrency in the project, and was asked to name one of my favorite optimizations, followed by questions about transactions, indexing, and high availability.
Finally, the interviewer asked questions about concurrent flow limiting, the JVM model, the JMM model, the garbage collection mechanism, the garbage collector, etc. It also includes some design patterns used, which design patterns are used in the project and so on.
Objectively speaking, my basic knowledge is quite solid, and I have a thorough study of Oracle database. Except for some business details, I can answer all the basic questions smoothly.
As the morning passed, it was clear that the technical interviewer was quite satisfied with me.
I was also very happy, the thought of being able to leave those idiots immediately, in the heart of the happy, so I went to Hong Kong Square for lunch to eat a good meal.
In the afternoon, I returned to the interview site and continued to chat with HR. HR began to ask some questions about “reasons for leaving, company situation, team size, whether I had led a team” and so on. Finally, after negotiating salary, benefits and reporting hours, I was sent home.
Said to give me feedback within a week, I did not ask much, directly went home.
After a week of waiting, no response, and then a week of waiting, no response, I was a little bit hairy. To be honest, I liked both the environment of the company and the technical environment described by the interviewer. Besides, I think the Offer is in the bag.
So the technologically straight nature starts to take over, picking up the phone and asking.
After several twists and turns, I finally got in touch with the HR person who interviewed me that day. I got straight to the point: “Two weeks have passed, why haven’t I received the Offer from your company?Is there any problem?”
“I’m sorry, Mr. Wang, but you were not accepted by our company.”
I don’t understand, busy ask: “ah?It can’t be. Why?”
“Although your abilities and experience are highly regarded by us, your formal dress on the day of the interview was spotted by our boss in India, who felt that you were too formal for a technical person and did not suit our philosophy of seeking technological innovation, so… I’m sorry.”
Nima, what kind of excuse is that?I’ve heard of techies being rejected for being sloppy or casual, and it’s the first time I’ve heard of “being turned down for being too formal”.
Well, there is no excuse for beating a stick in the mouth. I have heard that Indian Asan has bad brains and this time it seems to be proved. To tell the truth, although the IT industry talent demand is large, the employment scope is relatively wide, but in the technical interview, in addition to the technical ability, there are still many problems, if not careful, IT is easy to inexplicable trample.

Finally, let me say a few things that technical people should not do in an interview:
Pay attention to dress appropriately, clean (remember to wash hair), generally OK, don’t wear a suit and tie very formal. No matter in the morning or afternoon, remember to eat breakfast before you go, so as not to starve the brain hypoxia, slow reaction. If you encounter malicious difficulties or “an empty hand for a white Wolf”, don’t fight each other, don’t resist, just stand up and leave when you face the stupid force with a pure smile. Whether it’s technology or the Internet, trust and mutual reliance are the key, and the main theme is sharing and win-win. To hell with the bureaucracy. Don’t care too much about the size of the business, also don’t care too much about the development of the industry, “do the right company, as the right boss” is more important than anything.

Well, I hope you will keep the above stories in mind in future interviews, stay away from strange things and cherish your career prospects.

Life is short. It’s Python or Java. Which one do you choose?
https://edu.csdn.net/topic/python115?utm_source=cxrs_bw

Commend on heat

In the next two years, how do data analysts hang up highly educated engineers? be convinced!

Summarize the necessary skills of data analysis, I hope it can help you.
One, data analysis three musketeers
We will analyze the mapping process for Pandas data, including data loading, cleaning, storage, conversion, merging, and remodelling. We will also analyze the mapping process for Pandas data

Second, the MySQL
Multi-platform installation and deployment of MySQL visualization tools and data import and export of multi-table relationship design and field constraints SQL to achieve sales task distribution system

III. Visualized package technology arrangement
Use Django to build a Web project, Web interface to show the principle of communication between browser and Web server routing, view, template, model association principle Seaborn various graphs to create Tableau worksheets, dashboards, story details

Fourth, quantitative analysis data collection
Optimal design algorithm for mathematical modeling of the shape and size of cans Detail the evaluation criteria of the algorithmic model for the study of strategic financial quality factors of “one price”

Five, Hadoop comprehensive analysis
MapReduce and Python programming in detail on the Cascading MapReduce principle analysis Cominer analysis of Spark analysis of SQL distributed and SQL query engine analysis
4. Selected video tutorials + learning documents


These [learning content], only for everyone to study and exchange use, trouble and advertising party please detour!!

Click on the link and leave your contact information, can rapid consultation, free nyc: https://t.csdnimg.cn/StoO

↓↓↓ ↓ with emphasis on ↓↓↓
Today’s society needs, is not only can write code code farmers, but technical and understand the business, can through data analysis, optimize the code to solve the actual business problems of complex talents!
Whether you do research and development, system architecture, or do products, operations, or even management, data analysis is the basic skills, it is no exaggeration to say: data analysis ability, can let you at least the next 10 years of technical career skills.
The author has made an exploratory analysis of the relevant information on the net specifically: 5W monthly salary is only in the middle position. If you want to change careers or work in the data industry, but don’t know where to start, I recommend you study CSDN. It is easier to enter the industry and has broad employment prospects.
Why do I recommend this course to you?
In fact, in any enterprise, each operation link will produce its corresponding data. When there is a problem in the enterprise, correct and complete data analysis can help the decision maker to make a wise and favorable decision. Data analysis plays a vital role in an enterprise.
Therefore, data analysis is like the doctor of the enterprise, which plays a vital role in the survival and development of the enterprise.
Based on this idea, I recommend CSDN’s self-run course “Data Analysis Training Camp” to you, which covers a wide range of content and integrates data collection, cleaning, sorting, visualization and modeling to help you establish the underlying logical thinking of data analysis!

This course is based on the analysis and mining methods often encountered in Python3, teaching you to find problems, form solutions, take actions, feedback and evaluation through data analysis, and form a closed loop, so that your data can give full play to the business value!

 
How is the course planned?
Scientific and systematic curriculum design
It covers all the technologies that will be applied in the jobs of data analysis engineers in the market, and focuses on the interview questions that must be asked and often asked by algorithms.
Real Stimulating Enterprise Projects
Across real business scenario projects such as finance, advertising, e-commerce, competition and academic experiment, on the basis of the existing courses, the real time training of 11 enterprise-level projects of hot technology has been added.
# Accompany you with a very conscientious teaching service #
Online learning, one-on-one Q&A, real project practice, regular testing, head teacher supervision, live Q&A, homework correction, all of these are designed to ensure that you can follow, finish and learn in the 12 weeks.
In addition, CSDN will also invite some industry celebrities to hold closed-door sharing meetings for students from time to time. Maybe just a little experience sharing in job hunting and daily work can help you avoid many detours.
Lecture given by engineers of front-line big factories
Leaders of front-line big companies such as BAT, Didi and netease serve as teaching tutors, and give in-depth explanations according to the requirements of market data mining positions, so as to directly understand the selection tendency of famous enterprises.
Senior headhunters recommend and guide employment
One to one employment program + resume modification + mock interview + interview tape copy + psychological counseling + free guidance work problems until probation!
Send: 50+ Interview Intensive Topics & AMP; 200+ practical interview question training
In the process of job hunting, CSDN is like your “coach”, providing targeted assistance services in every link of your job hunting.
Again! The most recent Talent Training Program has only 100 places available on a first-come-first-served basis! But also can enjoy super low – price benefits! (It is said that there are only a dozen spots left.)
If you have more questions, such as price, suitable for study, detailed study outline, you can scan the code and reply to the corresponding question.
Emphasis: if you want to test whether you are suitable for the industry, the instructor will send you an audition class + introductory materials + learning map + high-frequency interview questions based on your foundation, these materials are enough to help you test yourself whether you can engage in the relevant position!

Click on the link and leave your contact information, can rapid consultation, free nyc: https://t.csdnimg.cn/StoO

12 days after the programmer was dismissed by the company, the former leader asked to go back to the company to explain the code clearly, but he was confused

In general, if an employee has left the company, it means he or she is no longer affiliated with the company. Before the employee leaves, the thing to do is to complete the handover of work, after the resignation of the company’s anything, basically has nothing to do with the employee.
Recently I saw such a post on the workplace forum: the programmer was fired by the company for 12 days, the former leader asked the company to explain the code clearly, the employee replied: yes, but charge! What’s going on here?

It turned out that the programmer had been working in the previous company for more than 4 years. Later, the company fired many employees for various reasons, including the programmer. Twelve days after the programmer left, he suddenly received a call from his former boss, who asked the employee to come back to the company and explain the code clearly. And the former leader is not very polite, but in a way of command. The programmer was stunned when he received this call. It is unreasonable to ask for such a long time since he left his job.

The employee later directly refused the leader’s request, and also said such a sentence: I will be clear back to the company code is no problem, but to charge, the leader was angry, also said that the code is not clear, is his problem, otherwise will be investigated for responsibility!
So, what did the netizens say?

Some netizen said that the company dismissed me when early why to go, now the problem can not be solved, but also the bashful request back. More critical is the leadership of EQ is really very low, you are his leadership in the past is right, but now are not in a company, still use this tone to speak, not everyone can be used to you. If it’s me, hang up.
Some netizen said: you can promise to go back to the code, about the time after not to go, and so on the leadership to call you, you say now very busy, anyway is to drag, the leadership also take you have no way.

 
Of course, there are netizens said: if the salary is almost the same, choose Baidu is actually a good. I am now a Java programmer, now quit doing their own online tutoring services to private study guide, if you now also are learning Java, in the introduction of the process of learning Java meet any industry, technical issues, or where you are now in the introduction to the process of learning Java lacks a complete tutorial system and a communication network, you can join my Java learning communication group: https://jq.qq.com/?_wv=1027& K = 5RXJVIC, which contains the latest video tutorials I recorded from last year to now according to the market technology stack requirements. In the group files, there are learning manuals, interview questions, development tools and PDF document tutorials that I organized by myself. If necessary, you can download them by yourself.
If you were the employee, what would you do?Comments are welcome.